Contactez nos conseillers formation : 05 40 05 33 23

Langage C++ – Programmation intermédiaire (Réf. CPP-PE 176)

AccueilINFORMATIQUELangage C++ – Programmation intermédiaire (Réf. CPP-PE 176)

Tarif : 2350.00 H.T.Session : Se déroule sur 5 jours.

DESCRIPTION :

Comprendre les subtilités du langage C++ et en tirer parti pour écrire des programmes bien structurés, robustes et efficaces.

PUBLIC :

Développeurs souhaitant maîtriser tous les aspects du langage.

PRÉREQUIS :

Bonnes notions en développement C++.

PROGRAMME :

Durant cette formation les stagiaires aborderont les points suivants :

  • Les constructeurs et le destructeur : différents constructeurs (copie, transtypage…), contrôler la construction par transtypage
  • Méthodes : surcharges, paramètres par défaut, membres statiques
  • Programmation robuste : constructeur de copie, opérateur d’affectation, destructeur virtuel, importance du mot clef « const »
  • Héritage : héritage public et privé, polymorphisme, méthodes abstraites, héritage multiple – virtuel
  • Surcharge des opérateurs : opérateurs internes ou externes, symétrie
  • Contrôle de la création / destruction des objets (singleton)
  • Pointeurs de membres
  • Gestion des exceptions
  • Espaces de nommages nommés et anonymes
  • Alias d’espaces de nommage
  • Directive using
  • Utilisation de « typeid » avec la classe « type_info »
  • Vérification / conversion de type à l’exécution avec dynamic_cast
  • Limites et risques
  • Utilisation des constantes
  • Conditions
  • Macro avancées
  • Syntaxe
  • Fonctions / classes templates
  • Principe du paramétrage et de l’instanciation (implicite et explicite)
  • Spécialisation partielle ou totale, spécialisation de méthode
  • Typename et fonctions exportées
  • Templates pour implémenter les opérateurs
  • Les foncteurs
  • Impact sur les performances
  • Avantages / inconvénients de la gestion de ressources « intelligentes »
  • Différents types de pointeurs intelligents – création et utilisation
  • Limites et pièges à éviter
  • Les types de base : string, pointeurs auto
  • Les conteneurs et les itérateurs : séquences, conteneurs associatifs
  • Algorithmes : initialisation, remplissage, échanges
  • Réorganisation de séquences
  • Opérations de recherches, d’ordonnancement, de comparaison
  • Opérations sur les ensembles
  • Templates variadiques et externes
  • Assertions statiques
  • Introduction des expressions et fonctions lambda
  • Sémantique RValue Reference Move
  • Enumérations typées
  • Le type tuple
  • Support des expressions régulières
  • Tables de hachage