theodorus a dit:
Justement c'est le size() qui est important. Si c'est un string comme dans Pascal, il n'y à qu'à regarder le premier octet pour avoir la taille. Si c'est un string "null terminated", il faut tout parcourir.
Cet exemple c'est pour te montrer que derrière une méthode il n'y a pas forcément de calcul mais juste un retour d'une propriété ou plutôt d'un membre donnée.
Si tu savais ce qu'est l'OO (le pouvoir du côté obscur de la force), tu ne poserais pas une telle question.
Pour rappel, le but d'une instance de classe est d'encapsuler (de mettre ensemble) des attributs (ou membres données) et des fonctions membres (ou méthodes).
les attributs, les données, l'implémentation de la classe sont ce que l'utilisateur de la classe ne doit pas comprendre, savoir pour en tirer parti... Ca s'appelle le masquage de l'information.
Comment ça marche ?
On déclare les données comme membres PRIVES de la classe => on ne les voit pas de l'extérieur et on ne peut donc pas y accéder
On déclare les méthodes (l'interface utilisateur) PUBLICS (attention, toutes les méthodes ne sont pas forcément publics, je simplifie)
Via des appels à des méthodes on accède, on modifie les données.
exemple (simplifié tjs)
TaClasse unObjet;
unObjet.attribut1; //=> Boum, inaccessible...
unObjet.methode_SetAttrib1(...); //=> on modifie l'attribut1
unObjet.methode_GetAttrib1(...); //=> on accède à l'attribut1