VIII - Types abstraits de données

1. L'horloge (version 1)




Haut de la page

2. L'horloge (version 2)



Haut de la page

3. L'horloge (version 3)

3.1. Arité, priorité, ordre d'évaluation
On ne peut pas changer: 3.2. Redéfinition d'un opérateur
2 options:

1. Dans une méthode
a + b => a.operator+(b) 2. Dans une fonction
a + b => operator+(a,b) Dans les deux cas, les arguments (b pour dans une méthode, a et b pour dans une fonction) peuvent faire l'objet de conversion automatique.
Les deux versions sont exclusives (ne peuvent être définies en même temps.

3.3. Exécution d'une opération
  1. transmmettre les opérandes
  2. effectuer l'opération
  3. retourner le résultat (dans une variable anonyme)
  4. effectuer l'affectation (=)
  5. détruire la variable anonyme



Haut de la page

4. Opérateur = et conversion vers les types primitifs

Les seules méthodes qui sont générées automatiquement sont le constructeur copieur et l'opérateur =



Haut de la page

5. Construction et destruction des types




Haut de la page

6. Le sac




Haut de la page

7. Itérateur de sac





Haut de la page

8. La promotion des types


Haut de la page