Tableau d’objet en C++
Une fois que vous avez maîtrisé les classes et les objets, vous devez avoir compris à quel point le concept de classes et d’objets peut être utile. Dans ce tutoriel nous allons découvrir comment créer un tableau d’objet en C++.
Comme nous le savons, un tableau est une collection de type similaire, donc un tableau peut être une collection d’objets.
Exemple: Tableau d’objet en C++
#include<iostream> using namespace std; class Persons { char name[30]; int age; public: void getdata(); void putdata(); }; void Persons::putdata() { cout<<"Nom: "; cin>>name; cout<<"Age: "; cin>>age; } void Persons::getdata() { cout<< "Nom: " << name << "\n"; cout<< "Age: " << age << "\n"; } int main () { const int size=3 ; Persons persons[size] ; for(int i=0; i < size; i++) { cout<<"Entrez les informations sur la personne "<< (i+1) <<"\n"; persons[i].putdata(); } for(int i=0; i < size; i++) { cout<<"\nPersonne "<< (i+1) <<"\n"; persons[i].getdata(); } return 0; }
Sortie:
Entrez les informations sur la personne 1 Nom: Alex Age: 20 Entrez les informations sur la personne 2 Nom: Thomas Age: 25 Entrez les informations sur la personne 3 Nom: Emily Age: 18 Personne 1 Nom: Alex Age: 20 Personne 2 Nom: Thomas Age: 25 Personne 3 Nom: Emily Age: 18
Dans cet exemple, persons[size] est un tableau de personnes du type class Persons et de taille trois est déclaré. Cela implique que « persons » est un tableau de trois objets de la classe Persons . Notez que chaque objet du tableau peut accéder aux membres publics de la classe de la même manière que tout autre objet, c’est-à-dire en utilisant l’opérateur point (.) Par exemple, persons[i].getdata() invoque la fonction getdata() pour le ième élément du tableau.
Lorsqu’un tableau d’objets est déclaré, la mémoire est allouée de la même manière qu’aux tableaux multidimensionnels. Une copie distincte du nom et de l’age est créée pour chaque personne : persons[0], persons[1] et persons[2]. Cependant, les fonctions membres sont stockées à un emplacement différent dans la mémoire et partagées entre tous les membres du groupe. Par exemple, l’espace mémoire est alloué au tableau d’objets comme suit: