Plan du cours

  1. Introduction au modèle objet
    1. Notion de d'objet et de classe
    2. L'encapsulation
    3. L'héritage
    4. L'agrégation
    5. Le polymorphisme
    6. L'association
    7. Glossaire de termes orientés objet
  2. Différences entre C et C++
  3. Introduction à la programmation orientée objet en C++
    1. Encapsulation
      1. Représentation des classes
      2. Organisation du code source
      3. Les modificateurs d'accès
      4. Déclaration et définition des membres de classe
      5. L'opérateur de résolution de portée
      6. Les méthodes inline
    2. Cycle de vie des objets
      1. Création d'objets : les constructeurs
      2. Instanciation
      3. Invocation de méthodes
      4. Appels de méthodes et objets constants
      5. Mort des objets
      6. Création et destruction de tableaux — constructeur par défaut
    3. Références sur objets, constructeur de recopie, affectation
      1. Utilisation de références sur les objets
        1. Passage d'objets par référence
        2. Manipuler les références
      2. Clonage d'objets : recopie et affectation
        1. Constructeur de recopie
        2. Opérateur d'affectation
        3. Un exemple classique
        4. Initialisation ou Affectation ?
      3. Forme canonique de Coplien
    4. Agrégation simple
    5. Héritage et Polymorphisme
      1. Généralités
      2. Syntaxe générale
      3. Le rôle du modificateur d’héritage et le modificateur d’accès protected
        1. A quoi sert l'héritage en private ?
        2. Faut il toujours mettre les attributs en protected?
      4. Construction / destruction et héritage
      5. Polymorphisme et classes abstraites
        1. Mise en place du polymorphisme
        2. Exploitation du polymorphisme
        3. Les tables de méthodes virtuelles
        4. La réutilisation du code de la classe mère
      6. Les difficultés liées à l'héritage multiple
        1. Les homonymes
        2. L'héritage virtuel comme solution à l'héritage à répétition
    6. Les template
      1. Introduction
      2. Les fonctions template
        1. Motivation
        2. Mise en oeuvre des fonctions template
      3. Les classes template
        1. Introduction
        2. La classe Pile 1ère version
        3. Des constantes en paramètres
        4. L'organisation du code source
        5. La délicate cohabitation entre template et friends
    7. Les exceptions
      1. Les anciens mécanismes de gestion des erreurs
        1. Emission de messages
        2. Fonction renvoyant un statut
      2. Les exceptions
        1. Le type des exceptions
        2. La mise en place des exceptions sur un exemple
        3. Lancer une exception
        4. Gérer les exceptions
        5. Propagation des exceptions
        6. Plus d'informations dans les exceptions
        7. Achevons notre exemple !
  4. Travaux pratiques
Mis à jour la dernière fois le 1er décembre 1999 par l'Ours Blanc des Carpathes en personne à une heure si avancée de la nuit qu'il ne s'en souvient même pas.