Langage C++ - Fonctions de base
5 jours - 35 heures
Objectifs
Acquérir et maîtriser le langage C++. Apprendre à réaliser des applications réutilisables. Apprendre les mécaniques du polymorphisme et de l’héritage.
Participants
Développeurs d'application et systèmes ayant à connaître la programmation objet en C++.
Prérequis
La connaissance du langage C est conseillée.
Pédagogie
La pédagogie est basée sur le principe de la dynamique de groupe avec alternance d'apports théoriques, de phases de réflexion collectives et individuelles, d'exercices, d'études de cas et de mises en situations observées. Formation / Action participative et interactive : les participants sont acteurs de leur formation notamment lors des mises en situation car ils s'appuient sur leurs connaissances, les expériences et mettront en œuvre les nouveaux outils présentés au cours de la session.
Public Visé
Collaborateurs - Développer ses compétences, s’affirmer comme expert dans son domaine, sécuriser son parcours professionnel ; Entreprises ou organisations - Accélérer les évolutions de carrière des collaborateurs, augmenter l’efficacité et l’employabilité des équipes… ; Demandeur d’emploi - Développer son employabilité, favoriser sa transition professionnelle...
Profil de l'intervenant
Consultant-formateur expert. Suivi des compétences techniques et pédagogiques assuré par nos services.
Accessibilité
Moyens techniques
Encadrement complet des stagiaires durant la formation. Espace d’accueil, configuration technique des salles et matériel pédagogique dédié pour les formations en centre. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.
Méthodes d'évaluation des acquis
Un contact téléphonique est systématiquement établi avec le stagiaire ou la personne chargée de son inscription afin de définir le positionnement. Si besoin, un questionnaire est adressé pour valider les prérequis en correspondance et obtenir toute précision nécessaire permettant l’adaptation de l’action. Durant la formation, des exercices individuels et collectifs sont proposés pour évaluer et valider les acquis du stagiaire. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis sont adressées avec la facture.
Programme
La fonction main et les E/S standard
- Spécification et corps de main
- Affichage de valeurs et de chaînes avec cout
- Lecture des valeurs avec cin
- Formatage des sorties avec des manipulateurs de flots
Variables, constantes et références
- Déclaration et initialisation de variables
- Types de données entiers
- Types de données à virgule flottante
- Calcul arithmétique et affichage des résultats
- Mélange des types entiers et à virgule flottante dans les calculs et affectations
- Utilisation des références pour l'efficacité et des constantes pour la sécurité
Définition et appels de fonctions
- Passage des arguments aux fonctions et retour des valeurs depuis des fonctions
- Passage des arguments : par valeur ou par référence
- Visibilité, durée et valeur initiale des variables temporaires locales et des paramètres
Décisions, boucles et logique
- Prise de décision avec if/else
- Valeurs logiques bool ou int
- Chaînes d'instructions if/else
- Exécution de boucles avec while et for
- Opérateurs d'égalité, relationnel et logique
- Opérateurs incrémentiels et décrémentiels
Tableaux, pointeurs et chaînes
- Déclaration et utilisation de tableaux et pointeurs
- Stockage de chaînes dans des tableaux de caractères
- Accès aux éléments des tableaux par l'intermédiaire des pointeurs
- Pointeurs ou références
- Clause string standard et ses méthodes
Encapsulation des types de données de niveau supérieur
- Fonctions membres publics et données membres privés
- Membres protégés des classes
- Constructeurs et destructeurs
- Syntaxe d'initialisation de membre
- Auto-référence : le pointeur this
Déclaration, modification et accès aux objets
- Manipulation des tableaux d'objets, des pointeurs vers des objets et des références aux objets
- Appel des fonctions membres
- Fonctions membres const
- Passage des objets par valeur et par référence
Surcharge des opérateurs et des fonctions
- Simplification des interfaces des classes
- Signatures des fonctions
- Surcharge de l'affectation (=) et de l'insertion
- Fonctions friend
- Construction de copie explicite
- Comment éviter les constructions par défaut d'affectation et de copie
Séparation des interfaces et des mises en œuvre
- Comment la séparation aide à la réutilisation de code
- Création de fichier en-tête et de fichier de code
- Opérateur (=) membre de la classe
- Spécification des fonctions en ligne
Dérivation de nouvelles classes des classes existantes
- Construction et destruction d'objets dérivés
- Relations “est-un”
- Réutilisabilité par extensions incrémentielles
- Classes de base et classes dérivées
- Redéfinition des fonctions membres de la classe de base dans des classes dérivées
Utilisation de fonctions polymorphiques
- Redéfinition des fonctions membres virtuelles de la classe de base dans des classes dérivées
- Surcharge à l'exécution des fonctions par les pointeurs sur les classes de base et les références