Qu'est-ce qu'un vecteur d'objets C++

Qu Est Ce Qu Un Vecteur D Objets C



En tant que débutant en C++, vous entendrez peut-être le terme ' vecteur d'objets ”. Cependant, vous ne comprenez pas bien ce que signifie ce terme et comment il pourrait être utilisé dans un programme C++.

Si vous êtes celui qui cherche des conseils sur vecteur d'objets en C++, suivez les instructions de cet article.

Qu'est-ce qu'un vecteur d'objets en C++

En C++, un vecteur d'objets est une structure de données qui permet aux utilisateurs de stocker un ensemble d'objets ou de types de données connexes. Il fonctionne de la même manière qu'un tableau standard et offre aux utilisateurs l'avantage d'être redimensionnable, ce qui signifie qu'il peut s'agrandir ou se réduire en fonction des besoins d'un programme. Cette fonctionnalité est particulièrement utile lorsque vous travaillez avec de grands ensembles de données de différentes tailles.







Comment créer un vecteur d'objets en C++

Un vecteur d'objets de classe semble être un exemple d'un tel vecteur personnalisé dans lequel plusieurs instances de classe peuvent être stockées.



Le programme C++ suivant créera un vecteur d'objets de classe.



#include
#include
#include
en utilisant espace de noms std ;
entier rand_Integer ( entier X, entier et )
{
retour ( X + rand ( ) % et ) ;
}
chaîne rand_String ( entier paresseux1 )
{
chaîne str1 ;
pour ( entier je = 0 ; je < paresseux1 ; je ++ ) {
carboniser ch = 'UN' + rand ( ) % 26 ;
chaîne1. repousser ( ch ) ;
}
retour chaîne1 ;
}
classe Employé
{
nom de chaîne ;
entier identifiant ;
entier âge ;
public :
annuler getter ( )
{
nom = rand_String ( dix ) ;
identifiant = rand_Integer ( dix , 30 ) ;
âge = rand_Integer ( 25 , 40 ) ;
}
annuler afficher ( )
{
écoute << nom << ' \t ' << identifiant << ' \t ' << âge << ' \t ' << ' \n ' ;
}
} ;
entier principal ( )
{
vecteur v1 ;
Employés ;
pour ( entier je = 0 ; je < 5 ; je ++ )
{
s. getter ( ) ;
v1. repousser ( s ) ;
}
pour ( entier je = 0 ; je < 5 ; je ++ )
{
v1 [ je ] . afficher ( ) ;
}
retour 0 ;
}

Dans le code ci-dessus, nous avons généré aléatoirement les données (nom, âge et identifiant) de cinq employés à l'aide d'un vecteur d'objets de classe nommé ' Employé ”. Où nous avons défini la fourchette de 10 à 30 pour l'identifiant de l'employé et de 25 à 40 pour son âge.





Avantages de l'utilisation du vecteur d'objets en C++

Il y a plusieurs avantages à utiliser un vecteur d'objets en C++, qui sont les suivants :



  • Permet aux utilisateurs de stocker, gérer et accéder efficacement aux données.
  • Les utilisateurs peuvent ajouter, supprimer ou manipuler des données en fonction de leurs besoins sans avoir à créer un tableau à partir de zéro.
  • Optimise la disposition de la mémoire des objets.
  • Redimensionnez facilement le tableau pendant l'exécution.
  • Les performances sont améliorées lorsqu'il s'agit de données volumineuses.

Un vecteur ayant un pointeur de classe

Vous pouvez également utiliser un vecteur d'objets en C++ pour stocker l'adresse de l'objet au lieu d'insérer directement des objets dans des vecteurs. Voici un exemple pour un tel cas :

#include
#include
en utilisant espace de noms std ;
classe propriétaire
{
public :
nom de chaîne ;
} ;
entier principal ( )
{
sites vectoriels ;
propriétaire * s1 = nouveau propriétaire ( ) ;
s1 - > nom = 'Alex' ;
propriétaire * s2 = nouveau propriétaire ( ) ;
s2 - > nom = 'Lui-même' ;
des sites. repousser ( s1 ) ;
des sites. repousser ( s2 ) ;
pour ( auto il : des sites ) {
écoute << 'Propriétaire:' < nom
<< ' ID du propriétaire :' << il << fin ;
}
retour 0 ;
}

Dans ce code, nous avons utilisé un vecteur d'objets en C++ pour stocker l'adresse d'un objet nommé 'propriétaire' au lieu d'insérer directement des objets dans le vecteur. Ici, nous avons utilisé un opérateur flèche pour accéder aux membres de l'objet.

Conclusion

Un conteneur utile en C++ qui permet aux utilisateurs de stocker plusieurs objets du même type en un seul endroit est appelé vecteur d'objets. Cela aide à rendre votre code plus efficace et flexible. De plus, en utilisant des vecteurs d'objets, vous pouvez facilement manipuler et accéder aux données qui vous aident à écrire facilement des programmes plus complexes.