C++ for Embedded Systems

Print


Who should attend?

Software developers with C experience having to develop object oriented applications in C++ for embedded systems.

Pre-requisites:

A good working knowledge of C.

Duration:

5 days ( including practical exercises )

Course Description:

This course introduces the programming language C++ for use in embedded systems, as well as the fundamentals of the object oriented way of programming. It has been designed for experienced C programmers, who do not only want to learn the syntax of a new programming language, but also want to understand how object-oriented features work and what their advantages are over traditional C programming. Assessments of the language features with respect to memory consumption and execution time detail the benefits and the pitfalls of the object oriented approach, thus allowing the students to develop powerful solutions using the scarce resources of embedded systems efficiently. Additionally, this course illustrates how hardware devices can be mapped into objects for a seamless integration in embedded object oriented applications. The associated practical exercises are performed on an ARM-based target board.
The contents of this course are based on the C++98 standard which is currently the most widespread language standard in use. The language features marked with C++11 require the use of a compiler supporting this newer language standard. Therefore these elements of the course can be booked optionally.  The features of the newer language standards C++11, C++14, C++17 and C++20 are covered in the course "Modern C++"


 Course Outline:

Non-Object-Oriented Language Features and I/O

From Struct to Class

Constructors and Destructors

Operators as Class Members

Inheritance and Aggregation

Virtual Functions and Polymorphism

Assessment of the Language Features

Mapping Hardware Devices into Objects

Practical Exercises