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