C++ – Avancé

0 Enrolled
14 heures
  • 14 heures
  • 49
  • 0
  • no
1,500.00€

Aperçu du cours

Objectif de formation : Apporter les connaissances nécessaires pour consolider des notions de bases du langage C++

Prérequis

  • Avoir des bases en programmation C++

Objectifs pédagogiques

  • Améliorer les connaissances sur la syntaxe basique de C++
  • Implémenter l'héritage & le polymorphisme
  • Concevoir des pointeurs intelligents
  • Administrer les exceptions dans C++
  • Comprendre et bâtir des templates en C++
  • Décrire et implémenter la bibliothèque STL

Public ciblé

  • Développeurs
  • Chefs de projets techniques

Programme de formation

  • Rappels sur la syntaxe de base

    • Conception de tableaux

    • Anatomie d’une classe

    • Spécificateurs d’accès private et public

    • Conception d’objets

    • Constructeurs, méthodes d’instance, méthodes static

    • Surcharge de fonctions & de méthodes

    • Configuration par défaut

    • Passage d’arguments aux fonctions et aux méthodes: par valeur, par adresse, par référence

    • Constructeur de copie

    • Surcharge de l’opérateur d’affectation

    • Destructeur

    • Méthodes const

    • Membres static

    • Travaux Pratiques : conception de quelques classes avec constructeurs et méthodes surchargés puis manipulation d’instances de ces classes

  • Implémentation de l'héritage et du polymorphisme

    • Usage du mot-clé protected

    • Distinction surcharge/redéfinition

    • Manipulation d’instances de sous-classes

    • Spécificateur protected

    • Tour d’horizon des types d’héritage

    • Utilisation des classes abstraites

    • Déclaration de méthodes virtuelles & virtuelles pures

    • Développement du code avec polymorphisme, redéfinition des méthodes

    • Implémentation de l’héritage multiple

    • Travaux Pratiques : parcours d’une hiérarchie d’objets sans, puis avec polymorphisme

  • Smart pointers C++11

    • Risques des pointeurs nus

    • Concepts de la gestion de ressources

    • Rôles des smart pointers

    • Causes de l’obsolescence de auto_ptr

    • Implémentation de unique_ptr & shared_ptr

    • Travaux Pratiques : Mise en place de smart pointeurs

  • Administration des exceptions

    • Description des forces de la gestion d’exceptions

    • Création d’un bloc try-catch & détermination de la modification du déroulement normalement du programme

    • Démarrage d’une exception

    • Propagation d’une exception

    • Concevoir ses propres classes d’exception

    • Travaux Pratiques : Implémentation d’une gestion d’exception dans une application

  • Templates en C++

    • Principe des templates

    • Forces & faiblesses

    • Syntaxe des templates de fonctions

    • Syntaxe des templates de classes

    • Instanciation des templates de fonctions

    • Instanciation des templates de classes

    • Travaux Pratiques : Conception d’un template de fonction puis conception d’un template de classe

  • Bibliothèque STL

    • Introduction à la Standard Template Library

    • Conteneurs

    • Itérateurs

    • Algorithmes

    • Entrées-sorties

    • Travaux Pratiques : implémentation de plusieurs conteneurs, algorithmes et templates d’entrées-sorties

Instructeur

Avatar de l’utilisateur

bprigent

0.0
0 commentaire
0 Students
491 Courses
Main Content