Шта је вектор објеката Ц++

Sta Je Vektor Objekata C



Као почетник у Ц++-у, можда ћете чути израз „ вектор објеката ”. Међутим, немате никакво правилно разумевање шта овај термин значи и како би се могао користити у Ц++ програму.

Ако сте тај који тражи упутства за вектор објеката у Ц++, пратите смернице овог чланка.

Шта је вектор објеката у Ц++-у

У Ц++, а вектор објеката је структура података која омогућава корисницима да чувају скуп повезаних објеката или типова података. Функционише слично као и обичан низ и нуди предност корисницима у томе што може да се мења, што значи да може да расте или да се смањује у складу са потребама програма. Ова функција је посебно корисна када радите са великим скуповима података различитих величина.







Како направити вектор објеката у Ц++

Чини се да је вектор објеката класе пример таквог прилагођеног вектора у којем се може ускладиштити више инстанци класе.



Следећи Ц++ програм ће креирати вектор објеката класе.



#инцлуде <иостреам>
#инцлуде <стринг>
#инцлуде <вектор>
Користећи именског простора стд ;
инт ранд_Интегер ( инт Икс, инт и )
{
повратак ( Икс + ранд ( ) % и ) ;
}
стринг ранд_Стринг ( инт лењ1 )
{
стринг стр1 ;
за ( инт и = 0 ; и < лењ1 ; и ++ ) {
цхар гл = 'А' + ранд ( ) % 26 ;
стр1. потисне ( гл ) ;
}
повратак стр1 ;
}
класа Запослени
{
назив стринга ;
инт ид ;
инт старости ;
јавности :
празнина геттер ( )
{
име = ранд_Стринг ( 10 ) ;
ид = ранд_Интегер ( 10 , 30 ) ;
старости = ранд_Интегер ( 25 , 40 ) ;
}
празнина дисп ( )
{
цоут << име << ' ' << ид << ' ' << старости << ' ' << ' ' ;
}
} ;
инт главни ( )
{
вектор в1 ;
Запослени с ;
за ( инт и = 0 ; и < 5 ; и ++ )
{
с. геттер ( ) ;
в1. потисне ( с ) ;
}
за ( инт и = 0 ; и < 5 ; и ++ )
{
в1 [ и ] . дисп ( ) ;
}
повратак 0 ;
}

У горњем коду, насумично смо генерисали податке (име, старост и ид) пет запослених користећи вектор објеката класе под називом „ Запослени ”. Где смо дефинисали опсег од 10-30 за идентификацију запосленог и 25-40 за њихову старост.





Предности коришћења вектора објеката у Ц++

Постоји неколико предности коришћења вектора објеката у Ц++, а то су:



  • Омогућава корисницима да ефикасно складиште, управљају и приступају подацима.
  • Корисници могу да додају, уклањају или манипулишу подацима у складу са својим потребама без потребе да креирају низ од нуле.
  • Оптимизује распоред меморије објеката.
  • Лако промените величину низа током времена рада.
  • Перформансе су побољшане када се ради са великим подацима.

Вектор који има показивач класе

Такође можете користити а вектор објеката у Ц++ за чување адресе објекта уместо директног уметања објеката у векторе. Ево примера за такав случај:

#инцлуде <иостреам>
#инцлуде <вектор>
Користећи именског простора стд ;
класа власник
{
јавности :
назив стринга ;
} ;
инт главни ( )
{
векторске локације ;
власник * с1 = Нова власник ( ) ;
с1 - > име = 'Алекс' ;
власник * с2 = Нова власник ( ) ;
с2 - > име = 'себе' ;
сајтови. потисне ( с1 ) ;
сајтови. потисне ( с2 ) ;
за ( ауто то : сајтови ) {
цоут << 'Власник:' < име
<< ' ИД власника:' << то << ендл ;
}
повратак 0 ;
}

У овом коду смо користили а вектор објеката у Ц++ за чување адресе објекта названог као „власник“ уместо директног уметања објеката у вектор. Овде смо користили оператор стрелице за приступ члановима објекта.

Закључак

Користан контејнер у Ц++ који омогућава корисницима да чувају више објеката истог типа на једном месту назива се вектор објеката. Помаже да ваш код буде ефикаснији и флексибилнији. Даље, користећи векторе објеката, можете лако манипулисати и приступити подацима који вам помажу да са лакоћом пишете сложеније програме.