- Présentation du cours
- Cours n° 1 (16 septembre) : Rappels de C
- Avertissement
- Déclarations/définitions
- Initialisation/affectation
- Variables
- Operateurs
du C et C++
- Types de base
- Booléen: bool
- Entiers : char, short,
int, long
- Flottants : float, double,
long double
- Chaînes de caractères : char * et string
- Opérateurs
- Structures de contrôle : if ... then ... else,
for, while, do ... while,
switch
- Passages de paramètres
- Appels de fonctions : la pile
- Fichier fact.cpp
- Organisation d'un programme en plusieurs fichiers
- Cours n° 2 (23 spetembre) : Tableaux et pointeurs
- Pointeurs
- Emplacements et adresses : opérateur &
- Pointeurs
- déclaration
- opérateurs = et *
- opérateurs ==, !=, < et
>
- valeur 0 et nullptr
- Adresse passée en paramètres
- Adresse retournée par une fonction
- Utilisations
- liens et chaînages entre objets
- passage de paramètres
- allocation dynamique
- accesseurs
- Tableaux
- Accès aux éléments
- Initialisation
- Tableaux et pointeurs
- Arithmétique des pointeurs : +, -, ++
et --
- Passage d'un tableau en paramètre
- Cours n° 3 (30 septembre) : Tableaux à plusieurs dimensions
- Tableaux à plusieurs dimensions
- Tableaux à plusieurs dimensions
- Tableaux à plusieurs dimensions en paramètre
- Deux stratégies de contournement
- Organisation d'un programme
- Cours n° 4 (7 octobre) :
- Commentaires avec //
- Emplacements des déclarations
- Classes
- Initialisation/affectation
- Déclaration et définition d'une classe
- Membres et méthodes
- Le pointeur this
- Constructeurs et destructeurs
- Appels des constructeurs
- Constructeur par défaut
- Utilisation d'une classe
simple
- Composition de
classes
- liste d'initialisation du constructeur
- Cours n° 5 (14 octobre) : délégation
- Surchage de fonction/méthode
- Paramètres par défaut des fonctions/méthodes
- Portée des noms
- Délégation (durée entre deux dates)
- objets constants
- variables et paramètres de fonctions/méthodes
- attributs
- pointeurs et références
- méthode et le pointeur this
- surcharge de méthode
avec const
- Cours n° 6 (21 octobre) : Références et membres statiques
- Cours n° 7 (28 octobre) : allocation dynamique
- Allocation dynamique d'un tableau dans une méthode
- Libération d'un tableau
- Allocation dans une classe
- Pointeur dans la classe
- Utilisation du constructeur et du destructeur pour allouer le tableau
- Exemple de classe pour un tableau vérifiant les bornes
- Redéfinition du contructeur de copie et de l'opérateur d'affectation
- Cours n° 8 (4 novembre) : allocation dynamique (suite)
- Contruction ? : et ,
- Allocation dans une classe
- Accesseur int at(int) et void at(int, int)
pour lire et écrire une valeur
- Accesseur int* at(int) avec pointeurs
- Accesseur int& at(int) avec références
- Accesseur int& operator[](int) avec références
- Classes pour les tableaux à deux dimensions
- Deux implémentations
- Écriture des constructeurs, destructeurs et opérateurs d'affectation
- Écriture de int& operator()(int, int)
pour les deux implémentations
- Partiel le 19 novembre de 14h00 à 16h00 en salles 1021 et 2014.
Le seul document autorisé est une feuille de memento.
(correction du premier exercice et
source du dernier exercice)
- Cours n° 9 (25 novembre) : héritage
- Cours n° 10 (2 décembre)
- Pointeurs, référence et héritage
- Redéfinition de méthode
- Méthodes virtuelles et non virtuelles
- Cours n° 11 (9 décembre) : classes abstraites et exceptions
- Cours n° 12 (16 décembre) : programmation générique (template)
- Cours n° 13 (6 janvier) STL
- Cours n° 14 (13 janvier)
- Cours n° 15 (20 janvier)
Design
patterns et lambda-expressions
- Lambda-expressions
- Itérateur
- Visiteur (opérateur de sortie et méthode virtuelle)
- Fabrique (classe pour les suites)
- Singleton
- Cours n° 16 (27 janvier) Révisions
- Examen. Le seul document autorisé est une feuille de memento.