Le langage C++

Code : CPP

Résumé

Objectif

Les stagiaires seront capables de concevoir des applications C++ utilisant des classes, devenir architectes de classes en créer leur propre architecture. Il s’agit du cours de base.

Contenu

Révision sur le langage C, introduction aux concepts de P.O.O. (programmation orientée objet), les classes, l’agrégation, l’héritage, le polymorphisme, la gestion des exceptions, les templates.

Animations

Les formations C++ sont réalisées par des formateurs ayant une grande expérience dans la conception objet et le langage C++. Ils ont participé à des projets mettant en situation parfois des équipes de plus de 100 développeurs C++. Ils connaissent également le langage C et surtout Java et peuvent comparer les différents langages.

Ateliers

Il s’agit d’un cours avec une grande part consacrée aux travaux dirigés (plus de 50% du cours).

Public

Développeurs.

Pré-requis

Connaître de préférence le langage C.

Remarque

Le cours C++ fait l’objet d’une comparaison avec les langages C et Java. Le premier parce qu’il en est issu et le second car Java talonne sur le marché le langage C++.

Durée

5 jours

Programme détaillé

Programme de la formation Le langage C++


Rappel sur le langage C : les pointeurs

  • Historique
  • L’aspect compilation et édition des liens
  • Les pointeurs
  • Les tableaux
  • Les doubles pointeurs, mécanismes mémoire

Les concepts de la Programmation objet

  • Les paradigmes de la P.O.O.
  • La classification
  • L’encapsulation
  • L’agrégation, la composition de classes
  • L’héritage, la dérivation, la sous classification
  • L’abstraction, la généricité

Le langage C++, le langage

  • Les types de données, les opérateurs
  • Le type référence et le pointeur
  • Les structures de contrôles
  • Les fonctions et les procédures
  • L’opérateur de résolution de portée
  • Liaison C – C++
  • Les paramètres par défaut des fonctions
  • Les fonctions « inline »
  • Comparaison avec Java

Les classes

  • Définition d’une classe
  • Les qualificateurs  » public  » et  » private « 
  • Les constructeurs par défauts
  • Les constructeurs surchargés
  • Les constructeurs par copie
  • Les destructeurs
  • Les fonctions membres de classes et les fonctions membres d’objets
  • Comparaison avec Java

L’agrégation

  • Principe
  • Ordre d’appel des constructeurs et destructeurs
  • La liste d’initialisation de constructeur
  • Comparaison avec Java

L’héritage, la dérivation

  • L’héritage public simple
  • Règle des constructeurs destructeurs
  • Les règles de conversion
  • Le qualificateur d’accès  » protected « 
  • Diverses syntaxes et accès
  • L’héritage privé
  • L’héritage multiple
  • Comparaison avec Java

Le polymorphisme

  • Les fonctions virtuelles
  • Le mécanisme du polymorphisme
  • Les destructeurs virtuels
  • Les classes abstraites et les fonctions virtuelles pures
  • Comparaison avec Java

La gestion des exceptions

  • Principe du traitement des anomalies
  • Try, catch et throw
  • Traiter une anomalie
  • Lever une anomalie
  • Comparaison avec Java

Les templates

  • Principe de la généricité
  • Les classes templates
  • Les fonctions templates
  • Exemple d’un template

Au sujet du formateur

bertrand

L’équipe LTM

Formation & développement mobile iOS/Android/Web

Contacter l’équipe