Ano ang Vector of Objects C++

Ano Ang Vector Of Objects C



Bilang isang baguhan sa C++, maaari mong marinig ang terminong “ vector ng mga bagay ”. Gayunpaman, wala kang anumang wastong pag-unawa sa kung ano ang ibig sabihin ng terminong ito at kung paano ito magagamit sa isang C++ na programa.

Kung ikaw ang naghahanap ng gabay vector ng mga bagay sa C++, sundin ang mga alituntunin ng artikulong ito.

Ano ang isang Vector ng Mga Bagay sa C++

Sa C++, a vector ng mga bagay ay isang istraktura ng data na nagpapahintulot sa mga user na mag-imbak ng isang hanay ng mga kaugnay na bagay o mga uri ng data. Ito ay gumagana katulad ng isang regular na array at nag-aalok ng isang kalamangan sa mga gumagamit ng pagiging resizable, na nangangahulugang maaari itong lumaki o lumiit ayon sa mga pangangailangan ng isang programa. Lalo na nakakatulong ang feature na ito kapag nagtatrabaho sa malalaking dataset na may iba't ibang laki.







Paano Gumawa ng Vector ng Mga Bagay sa C++

Ang isang vector ng mga bagay sa klase ay tila isang halimbawa ng naturang pasadyang vector kung saan maaaring maiimbak ang maraming mga instance ng klase.



Ang sumusunod na C++ program ay lilikha ng isang vector ng mga bagay sa klase.



#include
#include
#include
gamit namespace std ;
int rand_Integer ( int x, int at )
{
bumalik ( x + rand ( ) % at ) ;
}
string rand_String ( int tamad1 )
{
string str1 ;
para sa ( int i = 0 ; i < tamad1 ; i ++ ) {
char ch = 'A' + rand ( ) % 26 ;
str1. push_back ( ch ) ;
}
bumalik str1 ;
}
klase Empleado
{
pangalan ng string ;
int id ;
int edad ;
pampubliko :
walang bisa getter ( )
{
pangalan = rand_String ( 10 ) ;
id = rand_Integer ( 10 , 30 ) ;
edad = rand_Integer ( 25 , 40 ) ;
}
walang bisa disp ( )
{
cout << pangalan << ' \t ' << id << ' \t ' << edad << ' \t ' << ' \n ' ;
}
} ;
int pangunahing ( )
{
vector v1 ;
Empleyado s ;
para sa ( int i = 0 ; i < 5 ; i ++ )
{
s. getter ( ) ;
v1. push_back ( s ) ;
}
para sa ( int i = 0 ; i < 5 ; i ++ )
{
v1 [ i ] . disp ( ) ;
}
bumalik 0 ;
}

Sa code sa itaas, random kaming nakabuo ng data (pangalan, edad, at id) ng limang empleyado gamit ang vector ng mga bagay sa klase na pinangalanang ' Empleado ”. Kung saan tinukoy namin ang hanay na 10-30 para sa id ng empleyado at 25-40 para sa kanilang edad.





Mga Bentahe ng Paggamit ng Vector ng Mga Bagay sa C++

Mayroong ilang mga pakinabang ng paggamit ng isang vector ng mga bagay sa C++, na ang mga sumusunod:



  • Nagbibigay-daan sa mga user na mahusay na mag-imbak, mamahala, at mag-access ng data.
  • Ang mga user ay maaaring magdagdag, mag-alis, o magmanipula ng data ayon sa kanilang mga pangangailangan nang hindi na kailangang lumikha ng isang array mula sa simula.
  • Ino-optimize ang layout ng memorya ng mga bagay.
  • Madaling i-resize ang array sa panahon ng runtime.
  • Napapabuti ang pagganap kapag nakikitungo ito sa malaking data.

Isang Vector na May Class Pointer

Maaari mo ring gamitin ang a vector ng mga bagay sa C++ upang iimbak ang object address sa halip na direktang magpasok ng mga bagay sa mga vector. Narito ang isang halimbawa para sa ganoong kaso:

#include
#include
gamit namespace std ;
klase may-ari
{
pampubliko :
pangalan ng string ;
} ;
int pangunahing ( )
{
mga site ng vector ;
may-ari * s1 = bago may-ari ( ) ;
s1 - > pangalan = 'Alex' ;
may-ari * s2 = bago may-ari ( ) ;
s2 - > pangalan = 'Siya mismo' ;
mga site. push_back ( s1 ) ;
mga site. push_back ( s2 ) ;
para sa ( sasakyan ito : mga site ) {
cout << 'May-ari:' < pangalan
<< ' ID ng May-ari:' << ito << endl ;
}
bumalik 0 ;
}

Sa code na ito, ginamit namin ang a vector ng mga bagay sa C++ upang iimbak ang address ng isang bagay na pinangalanang 'may-ari' sa halip na direktang magpasok ng mga bagay sa vector. Dito ginamit namin ang isang arrow operator upang ma-access ang mga miyembro ng bagay.

Konklusyon

Ang isang kapaki-pakinabang na lalagyan sa C++ na nagbibigay-daan sa mga user na mag-imbak ng maraming bagay ng parehong uri sa isang lugar ay tinatawag na vector ng mga bagay. Nakakatulong itong gawing mas mahusay at flexible ang iyong code. Dagdag pa, gamit ang mga vector ng mga bagay, madali mong mamanipula at ma-access ang data na tumutulong sa iyong magsulat ng mas kumplikadong mga programa nang madali.