Experience Embedded

Professional Training, Consulting and Project Support

C++ Training for Beginners: Basic Programming Techniques for C++ Developers - Face-to-Face Training

  • Content
     
  • Objectives
     
  • Participants
     
  • Requirements
     

The development of sophisticated, high-quality and complex software involves substantial effort.

This effort can be reduced in the long term and the quality of software development can be improved by using object-oriented methods.

This C++ training highlights the syntax of the programming language C++ and offers in-depth practical exercises.

The extensive practical exercises will also facilitate the transition from procedural programming to the different way of thinking and working with object-oriented programming.

Topics like templates, the STL (standard template library), exceptions and containers will also be covered.

Software developers who want to use C++ based on object-oriented concepts.

Solid knowledge of C

Introduction to C++

  • History
  • C and C++: similarities and differences
  • Advantages of C++
  • Advantages of object oriented development

Program Setup

  • New language constructs
  • Function overload
  • Input and output with streams
  • Demonstrations
  • Exercise: Function overload

Data Types

  • New data types
  • Pointers and references
  • New items from C++ 11
  • Dynamic memory management
  • Smart pointer
  • Demonstrations

Control Structures

  • What was taken over from C? What is new?
  • Automatic for loop
  • Exceptions
  • Demonstrations
  • Exercise: Using control structures

Operators

  • Operator overload
  • Extraction and insertion operators for input and output

Classes

  • Setup of classes
  • Object creation
  • Constructor and destructor
  • Encapsulation of data and methods
  • Access rights to class members
  • this-pointer
  • Overloading of methods
  • Static data and methods
  • Constant methods
  • Difference between structure and class
  • Namespaces
  • Demonstrations
  • Exercise: Implementing a counter

Initialization and Release of Objects

  • How to use constructors
  • Universal initialization
  • Initialization of embedded objects
  • Constant data and their initialization
  • Demonstrations
  • Exercise: Implementing and initializing an embedded object

Specific Member Functions

  • Explicit and deleted constructors
  • Operator as member function
  • Specific syntax forms for typecast and increment/decrement operator overload
  • Move semantics
  • Demonstrations
  • Exercise: Implementing operators as member function

Inheritance

  • C++ implementation
  • Reuse of code through inheritance
  • Impact of access rights in class hierarchies
  • Behavior of constructors/destructors in class hierarchies
  • Demonstrations

Virtual Methods

  • Overriding methods of the basic class
  • Keywords: override and final
  • Polymorphism
  • Abstract classes
  • Abstract methods
  • Interfaces
  • Demonstrations
  • Exercise: Extending the counter with a derived class

Access Control with friend

  • Keyword: friend
  • Friend classes, methods and functions
  • Impact of friend on inheritance?
  • Demonstrations

Streams

  • Stream classes: overview
  • Output of files and strings using streams
  • Manipulators for output adjustment
  • Overloading stream operators
  • Demonstrations
  • Exercise: Stream operators for the counter class

STL (Standard Template Library)

  • Using template classes
  • C++ cast operators
  • Containers
  • Iterators
  • Algorithms
  • Smart pointer
  • Demonstrations
  • Exercise: Using STL containers

Practical Exercises in the C++ Training

  • Function overload
  • Using control structures
  • Operator overload
  • Implementing classes
  • Constructor overload, initializing embedded objects
  • Operators as member function
  • Polymorphism: inheritance and virtual methods
  • Stream output of own classes
  • Using the STL
  • The extensive exercises are carried out using Microsoft Visual Studio

MicroConsult PLUS

  • Participants get a USB stick with copies of the exercise directories and solution examples for all exercises.

The training price includes:
Lunch, drinks, training documentation and your training certificate.


ALL INCLUSIVE!

Related trainings

C++ Advanced: Extended Programming Techniques for C++ Developers - Face-to-Face Training
Training code: E-C++/FOR

Embedded C++: Object-Oriented Programming for Microcontrollers with C++/EC++ and UML - Face-to-Face Training
Training code: E-EC++

Coaching: Programming Languages
Training code: CE-PRG-LAN


Related trainings

FACE-TO-FACE TRAINING

Price *Duration
2.600,00 €4 days
Training code: E-C++
* Price per attendee, in Euro plus VAT
> Registration form download (PDF)> Training details as PDF

Onsite Training

Our customized workshops integrate your specific project tasks in our training content and accommodate your requirements on content, time, location, duration, technical environment and knowledge transfer methodology.

Please contact us for further information or an individual quotation.

> Training details as PDF

Face-To-Face - German

Date Duration
15.04. – 18.04.2024 4 days  
07.10. – 10.10.2024 4 days  

Live Online - German

Date Duration
10.02. – 13.02.2025 4 days  

Coaching

Our coaching services offer a major advantage: our specialists introduce their expertise and experience directly in your solution process, thus contributing to the success of your projects.

Coaching: Programming Languages

C++ Training for Beginners: Basic Programming Techniques for C++ Developers - Face-to-Face Training

Content

Introduction to C++

  • History
  • C and C++: similarities and differences
  • Advantages of C++
  • Advantages of object oriented development

Program Setup

  • New language constructs
  • Function overload
  • Input and output with streams
  • Demonstrations
  • Exercise: Function overload

Data Types

  • New data types
  • Pointers and references
  • New items from C++ 11
  • Dynamic memory management
  • Smart pointer
  • Demonstrations

Control Structures

  • What was taken over from C? What is new?
  • Automatic for loop
  • Exceptions
  • Demonstrations
  • Exercise: Using control structures

Operators

  • Operator overload
  • Extraction and insertion operators for input and output

Classes

  • Setup of classes
  • Object creation
  • Constructor and destructor
  • Encapsulation of data and methods
  • Access rights to class members
  • this-pointer
  • Overloading of methods
  • Static data and methods
  • Constant methods
  • Difference between structure and class
  • Namespaces
  • Demonstrations
  • Exercise: Implementing a counter

Initialization and Release of Objects

  • How to use constructors
  • Universal initialization
  • Initialization of embedded objects
  • Constant data and their initialization
  • Demonstrations
  • Exercise: Implementing and initializing an embedded object

Specific Member Functions

  • Explicit and deleted constructors
  • Operator as member function
  • Specific syntax forms for typecast and increment/decrement operator overload
  • Move semantics
  • Demonstrations
  • Exercise: Implementing operators as member function

Inheritance

  • C++ implementation
  • Reuse of code through inheritance
  • Impact of access rights in class hierarchies
  • Behavior of constructors/destructors in class hierarchies
  • Demonstrations

Virtual Methods

  • Overriding methods of the basic class
  • Keywords: override and final
  • Polymorphism
  • Abstract classes
  • Abstract methods
  • Interfaces
  • Demonstrations
  • Exercise: Extending the counter with a derived class

Access Control with friend

  • Keyword: friend
  • Friend classes, methods and functions
  • Impact of friend on inheritance?
  • Demonstrations

Streams

  • Stream classes: overview
  • Output of files and strings using streams
  • Manipulators for output adjustment
  • Overloading stream operators
  • Demonstrations
  • Exercise: Stream operators for the counter class

STL (Standard Template Library)

  • Using template classes
  • C++ cast operators
  • Containers
  • Iterators
  • Algorithms
  • Smart pointer
  • Demonstrations
  • Exercise: Using STL containers

Practical Exercises in the C++ Training

  • Function overload
  • Using control structures
  • Operator overload
  • Implementing classes
  • Constructor overload, initializing embedded objects
  • Operators as member function
  • Polymorphism: inheritance and virtual methods
  • Stream output of own classes
  • Using the STL
  • The extensive exercises are carried out using Microsoft Visual Studio

MicroConsult PLUS

  • Participants get a USB stick with copies of the exercise directories and solution examples for all exercises.