1
Ce concept est expliqué dans la remarque 4 mais peut être ignoré pour le moment
2
size() renvoie en fait un entier non signé, son type exact est size_t (voir les TDs).
3
vari représente des variables au sens large.
4
Cet argument n'est justifié que pour des structures de données de taille importante, par exemple les vector.
5
La classe vector dispose déjà de toutes les opérations voulues (empiler, dépiler, etc.), cet exemple est donc très artificiel mais éclairant... :-)
6
En fait, la longueur d'une chaîne de caractères s.size() correspond à l'appel de la fonction membre size() sur l'objet s de la classe string.
7
exit(1) est une instruction arrêtant brutalement l'exécution du programme, elle est utilisée ici en cas d'erreur. Nous verrons d'autres solutions plus ``propres''.
8
Il est possible de contourner cette limitation avec les fonctions et les classes ``amies'' (friend), voir section 14.3.
9
comme toute fonction C++: on peut avoir plusieurs fonctions de même nom à condition d'avoir des paramètres différents.
10
L'utilisation de la forme const & est utilisée pour des raisons d'optimisation (voir remarque 3).
11
La taille d'un type peut s'obtenir avec la fonction sizeof : ``cout<< sizeof(int);'' affichera le nombre d'octets nécessaires au stockage d'un entier.
12
En fait, la classe vector n'impose pas cette restriction.