5 days course
C++ Programming
Get started with programming in C++. During this course you will gain knowledge on how to develop C++ programs and implement object-oriented concepts with C++. Participants are expected to have programming experience from another language but not nessacarily OO. This course is taught in English.
Prerequisites
- At least 6 months programming experience
- No OO experience is assumed
Participant profile
This course is aimed for students who want to learn programming in C++.
Outcome
- Understanding C++ types, variables, and operators
- Using C++ flow-of-control constructs
- Writing and calling functions
- Using pointers, arrays, and structures
- Defining classes and creating objects
- Implementing operators and conversions
- Using inheritance and polymorphism effectively
Course Content
Introduction to C++
- Key features of C++
- Defining variables
- Formulating expressions and statements
- Built-in data types
- Console input/output
Operators and Types
- Assignment
- Compound Assignment
- Increment and decrement operators
- Const declarations
- Type conversions
Going Further with Data Types
- Enumerations
- Arrays
- Using the standard vector class
- Using the standard string class
- Structures
Flow of Control
- Decision making with if, if-else, and switch
- Looping with for loops, while loops, and do-while loops
Defining functions
- Declaring, calling and defining functions
- Function overloading
- Defining default arguments
- Pass-by-copy versus pass-by-reference
- Defining inline functions
- Header files and source files
Pointers
- Overview of pointers
- Defining pointers
- Dereferencing pointers
- Const pointers
- Null pointers
Overview of Object Oriented Concepts
- Classes and objects
- Abstraction
- Encapsulation
- Inheritance and polymorphism
Defining Classes
- Syntax of class declarations
- Public and private members
- Creating objects
- Using new and delete
- Structures vs. classes
Implementing Class Functionality
- Function overloading
- Default arguments
- Anonymous arguments
- Ambiguities
- Resolving scope conflicts
- Using the this pointer
Defining Constructors and Destructors
- Overview of an object's lifetime
- Defining constructors
- Constructor chaining
- Defining destructors
Operator Overloading
- Overview of operator functions
- Defining unary operators
- Defining binary operators
- Defining the [] operator
- Defining input and output operators
Defining Class-Wide Members
- Overview
- Static data members
- Static member functions
- Nested types
- Friend classes
Creating Collections of Objects
- The need for collections
- Introduction to template classes
- Using vector and list
- Using iterators
- Introduction to template functions
- Using the Standard Template Library
Copying and Conversions
- The copy assignment operator
- Copy constructors
- Conversions to a class
- Conversions from a class
Inheritance
- Recap of inheritance principles
- Defining a subclass
- Defining protected members
- Scoping and initialisation
- Multiple inheritance
- Abstract base classes
Polymorphism
- Recap of polymorphism
- Defining virtual functions
- Virtual destructors
- Pure virtual functions and abstract classes
Next course
Please contact us if you are interested in C++ Advanced programming or take a look at Modern C++ Development.
Instructor
Andy is a freelance instructor and consultant based in the UK, with more than 30 years experience in the industry across a wide range of technologies and platforms. Andy began his professional career in C and migrated through C++, Java, .NET and other languages and toolsets as the years passed by. Andy is currently actively involved in contemporary systems development techniques including microservice architecture, cloud-based systems, and containerization.Aktuelt online kursus
Online kurset "C++ Programming" kunne også være interessant for dig.
Do you have any course related questions, please contact
- Mette Rosenløv Vad
- Konsulent
- +45 72202432