Course : Object Programming in C++

Practical course - 5d - 35h00 - Ref. C++
Price : 3030 CHF E.T.

Object Programming in C++



Required course



INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Available in English on request

Ref. C++
  5d - 35h00
3030 CHF E.T.






Teaching objectives
At the end of the training, the participant will be able to:
Master the syntax of the C++ language
Implement the concepts of Object-Oriented Design
Use development tools associated with the language C++
Master major additions from the C++ 11 standard
Provide workstations equipped with Visual C++ (in Windows) and gcc (in Unix). The HOW was designed to illustrate all asp
Instructional methods
All exercises include an analysis/design phase following by a programming phase.
TRAINING PROGRAM

Practical details
Workstations with the Visual C++ (in Windows) and gcc (in Unix) languages are provided. The hands-on work was designed to illustrate all aspects of the language and to always implement object-oriented design concepts.
Teaching methods
All the exercises include an analysis/design phase followed by a programming phase.

Course schedule

1
C++ syntax (differences between C and C++)

  • Data: Definition, initialization, types of data.
  • Expressions: Notion of reference, casting mechanisms.
  • Operators (: :, new, delete).
  • Functions (passing parameters and returning values by reference, default values, inlining, overload).
  • Using C code in a C++ program.
  • References (arguments and return values).
  • Constant types.
  • Namespaces.
  • "Automatic" typing with the keyword auto (C++ 11).
  • Hands-on work ¤Getting started with the development environment and programming a simple program.

2
Object-Oriented Approach

  • General principles of Object techniques.
  • C++ and Object programming.
  • Introduction to Object-oriented methodologies.
  • An introduction to UML diagrams and rating (static diagram, dynamic diagram, collaboration diagram, scenario).
  • Hands-on work ¤Applying concepts to a case study that will be central to the exercises that follow.

3
C++ classes and objects.

  • Syntactical aspects: Fields, methods, constructors.
  • Access control.
  • Self-reference.
  • Fields and static methods.
  • Functions.
  • Friend methods and classes.
  • Dynamically creating object tables.
  • Methodological aspects: Designing classes.
  • Copy and move constructors (C++ 11).
  • Delegating constructors (C++ 11).
  • Introduction to memory management issues (stack, heap, garbage collector).
  • Hands-on work ¤Programming the case study. Designing and building a class and interface hierarchy.

4
Derivation and inheritance.

  • Principle of derivation.
  • Syntactical aspects: Definition of derived classes, constructors.
  • Access control.
  • Implementing polymorphism: Virtual functions.
  • Reusing code: Abstract classes.
  • Interfaces.
  • Multiple inheritance.
  • Semantic and methodological aspects: Code factoring.
  • Hands-on work ¤Setting up polymorphism in the case study.

5
Exceptions

  • Syntactical aspects: Try blocks, generating exceptions.
  • Methodological aspects: Constructing an exception hierarchy, use of exceptions.
  • Hands-on work ¤Introducing exceptions into the case study.

6
Overloading operators

  • Principle of overload.
  • Overloading binary operators.
  • Particular overload: Index operator, function, conversion.
  • Overloading memory management operators.
  • Overloading the operators '<<' and '>>'.
  • Hands-on work ¤Overloading some simple operators.

7
Models

  • Class models. Principles and general mechanisms. Overloading models and redefining methods.
  • Function model. Principles and general mechanisms. Overloading templates.
  • Templates and overloading operators.
  • Templates and derivation mechanisms.
  • Improvements offered by C++ 11.
  • Hands-on work ¤Model exercises.

8
I/O and overview of STL

  • I/O.
  • The principle of streams and input/output class hierarchy.
  • Description of some input/output classes.
  • Overview of STL.
  • Objectives and principles.
  • Descriptions of some templates and classes.
  • Containers, iterators, range-based for loop (C++ 11).

9
Conclusion

  • Software lifecycle: Testing, integration, release method.
  • Interaction with other environments.
  • Critical analysis of C++.
  • Evolution of C++.


Customer reviews
4,4 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
JULIEN P.
15/12/25
3 / 5

There are several criteria that taint the final assessment. The hard skills of the trainers are very good but the teaching is poorly mastered.1: The course material is very dated and it is not possible to know in which ppt the information is because there is no name on it. Prefer a PDF with more examples of code and colour coding.2: Only 1 exercise and it's too complicated to start with (class embedded in a class)3: Help with installing the developed tool.
GRÉGOIRE M.
15/12/25
5 / 5

The content was dense but dealt with accurately. Great responsiveness from the trainer, whose explanations were extremely clear.
NICOLAS H.
15/12/25
4 / 5

There were very few exercises in the end, which is probably due to the large amount of information. On the other hand, the trainer did show us some examples, which makes up for this somewhat.



Dates and locations

Dernières places
Date garantie en présentiel ou à distance
Session garantie
From 18 to 22 May 2026
FR
Remote class
Registration
From 18 to 22 May 2026
EN
Remote class
Registration
From 6 to 10 July 2026
FR
Remote class
Registration
From 6 to 10 July 2026
EN
Remote class
Registration
From 14 to 18 September 2026
FR
Remote class
Registration
From 2 to 6 November 2026 *
FR
Remote class
Registration
From 2 to 6 November 2026
EN
Remote class
Registration

REMOTE CLASS
2026 : 18 May, 18 May, 6 July, 6 July, 14 Sep., 2 Nov., 2 Nov.