Què és Vector of Objects C++

Que Es Vector Of Objects C



Com a principiant en C++, potser escolteu el terme ' vector d'objectes ”. Tanmateix, no teniu cap comprensió adequada del que significa aquest terme i de com es pot utilitzar en un programa C++.

Si ets tu qui busca orientació vector d'objectes en C++, seguiu les directrius d'aquest article.

Què és un vector d'objectes en C++

En C++, a vector d'objectes és una estructura de dades que permet als usuaris emmagatzemar un conjunt d'objectes o tipus de dades relacionats. Funciona de manera similar a una matriu normal i ofereix als usuaris l'avantatge de ser redimensionable, el que significa que pot créixer o reduir-se segons les necessitats d'un programa. Aquesta característica és especialment útil quan es treballa amb grans conjunts de dades de diferents mides.







Com crear un vector d'objectes en C++

Un vector d'objectes de classe sembla ser un exemple d'aquest vector personalitzat en el qual es poden emmagatzemar múltiples instàncies de classe.



El següent programa C++ crearà un vector d'objectes de classe.



#inclou
#inclou
#inclou
utilitzant espai de noms std ;
int rand_Enter ( int x, int i )
{
tornar ( x + rand ( ) % i ) ;
}
string rand_String ( int mandrós 1 )
{
cadena str1 ;
per ( int i = 0 ; i < mandrós 1 ; i ++ ) {
char cap = 'A' + rand ( ) % 26 ;
str1. fer retrocedir ( cap ) ;
}
tornar str1 ;
}
classe Empleat
{
nom de cadena ;
int id ;
int edat ;
públic :
buit captador ( )
{
nom = rand_String ( 10 ) ;
id = rand_Enter ( 10 , 30 ) ;
edat = rand_Enter ( 25 , 40 ) ;
}
buit disp ( )
{
cout << nom << ' \t ' << id << ' \t ' << edat << ' \t ' << ' \n ' ;
}
} ;
int principal ( )
{
vector v1 ;
Empleat s ;
per ( int i = 0 ; i < 5 ; i ++ )
{
s. captador ( ) ;
v1. fer retrocedir ( s ) ;
}
per ( int i = 0 ; i < 5 ; i ++ )
{
v1 [ i ] . disp ( ) ;
}
tornar 0 ;
}

Al codi anterior, hem generat aleatòriament les dades (nom, edat i identificador) de cinc empleats utilitzant un vector d'objectes de classe anomenat ' Empleat ”. On vam definir el rang de 10 a 30 per a la identificació de l'empleat i de 25 a 40 per a la seva edat.





Avantatges d'utilitzar Vector of Objects en C++

Hi ha diversos avantatges d'utilitzar un vector d'objectes en C++, que són els següents:



  • Permet als usuaris emmagatzemar, gestionar i accedir a les dades de manera eficient.
  • Els usuaris poden afegir, eliminar o manipular dades segons les seves necessitats sense necessitat de crear una matriu des de zero.
  • Optimitza la disposició de memòria dels objectes.
  • Canvia la mida de la matriu fàcilment durant el temps d'execució.
  • El rendiment es millora quan es tracta de dades grans.

Un vector amb punter de classe

També podeu utilitzar a vector d'objectes en C++ per emmagatzemar l'adreça de l'objecte en lloc d'inserir objectes directament en vectors. Aquí teniu un exemple per a aquest cas:

#inclou
#inclou
utilitzant espai de noms std ;
classe propietari
{
públic :
nom de cadena ;
} ;
int principal ( )
{
llocs vectorials ;
propietari * s1 = nou propietari ( ) ;
s1 - > nom = 'Alex' ;
propietari * s2 = nou propietari ( ) ;
s2 - > nom = 'A si mateix' ;
llocs. fer retrocedir ( s1 ) ;
llocs. fer retrocedir ( s2 ) ;
per ( automàtic això : llocs ) {
cout << 'Propietari:' < nom
<< 'ID del propietari:' << això << endl ;
}
tornar 0 ;
}

En aquest codi, hem utilitzat a vector d'objectes en C++ per emmagatzemar l'adreça d'un objecte anomenat 'propietari' en lloc d'inserir objectes directament al vector. Aquí hem utilitzat un operador de fletxa per accedir als membres de l'objecte.

Conclusió

Un contenidor útil en C++ que permet als usuaris emmagatzemar diversos objectes del mateix tipus en un sol lloc s'anomena vector d'objectes. Ajuda a fer que el vostre codi sigui més eficient i flexible. A més, utilitzant vectors d'objectes, podeu manipular i accedir fàcilment a les dades que us ajuden a escriure programes més complexos amb facilitat.