Aller au contenu principal

Formation Langage C++ - Programmation

  • 5 jours (35 heures)
  • Initiation
  • Présentiel ou classe à distance

Une formation proposée par

Objectifs

A l'issue de cette formation, vous serez capable de :

  • Programmer objet en C++
  • Définir l'héritage et le polymorphisme
  • Identifier les types de fonctions dont les inlines
  • Gérer la mémoire et les pointeurs
  • Utiliser la STL (Standard Template Library)
  • Surcharger des opérateurs.
Les compétences visées par cette formation font l'objet d'une évaluation.

À qui s'adresse cette formation ?

Développeurs.

Prérequis

Avoir connaissance du langage C, est conseillé.

Programme

1 Pendant votre formation

Langage C++ - Programmation

Jour 1 - Matin

C++ langage basé sur le C : rappels

  • Instructions, déclaration de variables, types et littéraux
  • Portée des variables
  • Les opérateurs et leurs priorités
  • Les conditions, opérateurs logiques
  • Les boucles, while, do while, for

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un premier programme sans classe
  • Utilisation des déclarations de variables et des types
  • Ajout des opérateurs principaux de C++
  • Ajout des structures de contrôle principales

Structure d'un programme

  • Le préprocesseur C / C++
  • Header et implémentation
  • Utilisation des constantes
  • Compilation conditionnelle
  • Déclaration anticipée (forward)

Exemples de travaux pratiques (à titre indicatif)

  • Travail sur les headers et implémentation en C++
  • Compréhension des phases de pré-compilation
  • Compilation de C++

Jour 1 - Après-midi

Définition de fonctions

  • La stack
  • Appel d'une fonction
  • Passage par valeur ou par référence
  • Passage par pointeur
  • Pointeur sur fonction

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un programme avec déclaration et utilisation multiple de fonctions
  • Modification des paramètres passés aux fonctions, par valeur et référence
  • Déduction des différences observées
  • Déclaration et utilisation de pointeurs sur fonctions

Jour 2 - Matin

Les classes

  • Définition d'une classe
  • Gestion de l'encapsulation
  • Constructeur, Destructeur, Initialisation par liste
  • Membres et fonctions statiques d'une classe
  • "this"
  • Idiome standard du C++ : RAII et smart pointers

Jour 2 - Après-midi

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un projet incluant plusieurs classes développées
  • Encapsulation des données
  • Utilisation des constructeurs
  • Compréhension du "this" dans les méthodes de classe
  • Exploitation des membres et fonctions statiques

Jour 3 - Matin

Gestion "moderne" de la mémoire

  • Comparaison de stack vs heap
  • Les pointeurs : unique_ptr, shared_ptr, weak_ptr
  • Sémantique de déplacement : Règle des 0 / 3 / 5

Gestion "bas niveau" de la mémoire

  • Context statique
  • Context dynamique
  • New et Delete

Exemples de travaux pratiques (à titre indicatif)

  • Création d'un nouveau projet sur la gestion mémoire
  • Heap et stack
  • Travail sur les destructeurs et constructeurs

Jour 3 - Après-midi

Const

  • L'intérêt du "const"
  • Paramètres "const"
  • Fonctions membre "const"

Fonctions inline

  • Inline implicite
  • Inline explicite
  • Impact sur la compilation
  • Impact sur le code généré

Exemple de travaux pratiques (à titre indicatif)

  • Ajout et test de fonctions "inline" au projet

Jour 4 - Matin

Héritage et polymorphisme

  • Héritage public de C++
  • Construction des classes dérivées
  • Utiliser la ZIM
  • Fonctions virtuelles
  • Fonctions virtuelles pures et classes de bases abstraites
  • Destruction des classes dérivées

Exemples de travaux pratiques (à titre indicatif)

  • Reprise du projet sur les classes
  • Ajout de niveaux d'héritage
  • Ajout de fonctions virtuelles et virtuelles pures
  • Ajout de classes abstraites

Jour 4 - Après-midi

Surcharge d'opérateur

  • Opérateur de cast
  • Opérateur de pointeur

Exemple de travaux pratiques (à titre indicatif)

  • Sur un nouveau projet, ajout de la surcharge de plusieurs opérateurs et tests

Jour 5 - Matin

Constructeur de copie et surcharge d'opérateur d'affectation

  • Surcharge du constructeur de copie
  • Surcharge de l'opérateur d'affectation

La STL (Standard Template Library)

  • Les conteneurs
  • Les itérateurs, vector, array, map, unordered_map, string, string_view
  • Les algorithmes (sort, find, transform, accumulate...)

Exemple de travaux pratiques (à titre indicatif)

  • Projet exploitant les apports de la STL en C++

Jour 5 - Après-midi

Gestion des exceptions

  • Les problématiques
  • Exception et références
  • Exception et valeurs
  • Exception et pointeurs

Exemple de travaux pratiques (à titre indicatif)

  • Ajout de la gestion des exceptions try-catch sur les divers projets réalisés

Evolutions du langage C++

  • Les lambda expressions
  • Les closures
  • Panorama des apports des versions C++11 à C++23
  • Apports des nouvelles versions dans le langage
  • Apports des nouvelles versions dans les classes

Les apports de l'Intelligence Artificielle (IA) dans le développement C++

  • Génération de boilerplate : classes, templates, CMakeLists, tests
  • Modernisation de code legacy (C++98 / 03 > C++20)
  • Aide à la lecture d'erreurs de compilation templates
  • Suggestions de refactoring

Financement

Plusieurs dispositifs de financement sont accessibles via les OPCO (Opérateurs de Compétences), organismes agréés par le ministère du Travail dont le rôle est d'accompagner, collecter et gérer les contributions des entreprises au titre du financement de la formation professionnelle.
Pour plus d'information, une équipe de gestionnaires SKOLAE Formation spécialisée vous accompagne dans le choix de vos formations et la gestion administrative.

Nous contacter pour en savoir plus

Points forts

Modalités pédagogiques

Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).

Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).

Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :

  • Ordinateurs Mac ou PC (sauf pour certains cours de l’offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
  • Environnements de formation installés sur les postes de travail ou en ligne
  • Supports de cours et exercices

En cas de formation intra sur site externe à M2I, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.

* nous consulter pour la faisabilité en distanciel

** ratio variable selon le cours suivi

Accessibilité aux personnes en situation de handicap

Formations complémentaires

Dernière mise à jour : 30/09/2026

Sessions

Langage C++ - Programmation

5 jours (35 heures) Réf. CPP-IN

à partir de 2 925 € HT

Repas inclus en présentiel
Places disponibles
S'inscrire
Places disponibles
S'inscrire
Places disponibles
S'inscrire
Places disponibles
S'inscrire

Ces formations peuvent aussi vous intéresser