Axel RINALDI, 4 rue J.J. Rousseau 68000 COLMAR -
(:06.08.22.44.20 – axel.rinaldi@wanadoo.fr
Formation langage C++ : du C au C++
Toute personne ayant une expérience de programmation dans un langage C et qui désire évoluer vers la programmation orientée objet en C++.
Acquérir les notions fondamentales relatives au développement d'applications en langage C++ et à la programmation orientée objet.
Des connaissances générales en programmation et une expérience du langage C.
Formation effectuée chez le client. Celle-ci peut être réalisée directement avec les outils de développement : Visual C++, Dev C++, CodeBloc, outils du client. Pour plus d’une personne il est bien de prévoir un vidéo - projecteur.
Alternance d’apports théoriques et de cas pratiques. Les cas pratiques peuvent pris directement à partir de cas réels du client.
3 jours
Dans le locaux du client.
7 heures par jour. Horaires selon convenance du client.
1600 € HT / personne (région Alsace )
Axel RINALDI ( 06.08.22.44.20 axel.rinaldi@wanadoo.fr
PROGRAMME
Le programme de formation peut être adapté durant la formation en fonction des connaissances du client et de ses points d’intérêt.
Les exemples mis en œuvre et exercices d’application peuvent être directement inspirés de cas d’étude du client afin de répondre au mieux à sa problématique.
Présentation du langage
Historique et évolution du langage C++
Changements sous GCC et Dev C++ ou Visual C++
Les changements syntaxiques par rapport au langage C
Le type bool
La référence
Autres changements :
déclaration des variables
les commentaires,
const, mutable
Les améliorations dans l’implantation des fonctions
La surcharge de fonctions
Les arguments par défaut
Le passage par référence
Principes de la programmation orientée objet
Notion d’objet et d’encapsulation : classe
Notion de méthode.
Contrôle d’accès, interface
Notion d’instance
Intérêt de l’héritage, type d’héritage
Polymorphisme
Modèle objet : diagramme de classe UML
Les classes
La déclaration d’une classe
Les attributs
Les méthodes
Le constructeur
Le destructeur
Le principe d’encapsulation et les indicateurs de visibilité
La surcharge des méthodes
L’implantation de la classe dans le corps (l’opérateur ::)
L’instanciation d’une classe
L’accès aux membres d’une classe (accesseur et mutateur)
Cycle de vie d’un objet
La forme canonique de Coplian
Les attributs de type pointeur et la forme canonique de Coplian
Le constructeur par recopie
Le constructeur de transtypage
L’opérateur d’affectation
Les autres caractéristiques
Les membres statiques
Les attributs statiques
Les méthodes statiques
Les tableaux dynamique d’objets
La création d’un tableau par l’opérateur new
La destruction d’un tableau par l’opérateur delete
La notion d’amitié
Principe
Exemples
La surcharge des opérateurs
Les règles de surcharge
L’opérateur d’indexation
Les opérateurs arithmétiques
Les opérateurs relationnels
Les opérateurs de redirection
L’héritage
Le mécanisme du lien d’héritage
L’héritage multiple et ses problèmes
Le contrôle d’accès aux classes de base
La surdéfinition des méthodes
L’accès aux membres d’une classe mère
Le polymorphisme
La virtualité
Les méthodes virtuelles pures
Les classes abstraites
La notion de polymorphisme
L’espace de nommage
Le principe de l’espace de nommage
Le nommage des espaces
Les alias des espaces de nommage
L’utilisation des éléments d’un espace de nommage
Les patrons
Le principe des templates
Les templates de fonctions
Les templates de classes
Instanciation des template de classes
La gestion des erreurs
Le principe du mécanisme des exceptions
La génération d’une exception
Le bloc " try … catch … finally "
Les entrée sorties standard par les flux
Ecrire une information sur la sortie standard avec cout
Lire une information depuis l’entrée standard avec cin
La gestion des fichiers par les flux
La classe ifstream pour lire un fichier
La classe ofstream pour écrire dans un fichier
STL
Présentation générale de STL
La manipulation de la classe Vector
La manipulation de la classe Map
Le traitement des chaînes de caractère
Axel RINALDI, 4 rue J.J. Rousseau 68000 COLMAR -
(:06.08.22.44.20 – axel.rinaldi@wanadoo.fr