Co je Vector of Objects C++

Co Je Vector Of Objects C



Jako začátečník v C++ můžete slyšet výraz „ vektor objektů “. Nemáte však správné pochopení toho, co tento termín znamená a jak by mohl být použit v programu C++.

Pokud jste ten, kdo hledá návod vektor objektů v C++ postupujte podle pokynů v tomto článku.

Co je to vektor objektů v C++

V C++, a vektor objektů je datová struktura, která uživatelům umožňuje ukládat sadu souvisejících objektů nebo datových typů. Funguje podobně jako běžné pole a nabízí uživatelům výhodu možnosti měnit velikost, což znamená, že může růst nebo zmenšovat podle potřeb programu. Tato funkce je užitečná zejména při práci s velkými datovými sadami různých velikostí.







Jak vytvořit vektor objektů v C++

Vektor objektů třídy se zdá být příkladem takového vlastního vektoru, ve kterém lze uložit více instancí třídy.



Následující program C++ vytvoří vektor objektů třídy.



#include
#include <řetězec>
#include
použitím jmenný prostor std ;
int rand_Integer ( int X, int a )
{
vrátit se ( X + rand ( ) % a ) ;
}
řetězec rand_String ( int líný1 )
{
řetězec str1 ;
pro ( int i = 0 ; i < líný1 ; i ++ ) {
char ch = 'A' + rand ( ) % 26 ;
str1. zatlačit zpátky ( ch ) ;
}
vrátit se str1 ;
}
třída Zaměstnanec
{
název řetězce ;
int id ;
int stáří ;
veřejnost :
prázdnota getter ( )
{
název = rand_String ( 10 ) ;
id = rand_Integer ( 10 , 30 ) ;
stáří = rand_Integer ( 25 , 40 ) ;
}
prázdnota disp ( )
{
cout << název << ' \t ' << id << ' \t ' << stáří << ' \t ' << ' \n ' ;
}
} ;
int hlavní ( )
{
vektor v1 ;
Zaměstnanec s ;
pro ( int i = 0 ; i < 5 ; i ++ )
{
s. getter ( ) ;
v1. zatlačit zpátky ( s ) ;
}
pro ( int i = 0 ; i < 5 ; i ++ )
{
v1 [ i ] . disp ( ) ;
}
vrátit se 0 ;
}

Ve výše uvedeném kódu jsme náhodně vygenerovali data (jméno, věk a id) pěti zaměstnanců pomocí vektoru objektů třídy pojmenovaných jako „ Zaměstnanec “. Kde jsme definovali rozsah 10-30 pro ID zaměstnance a 25-40 pro jejich věk.





Výhody použití Vector of Objects v C++

Existuje několik výhod použití vektoru objektů v C++, které jsou následující:



  • Umožňuje uživatelům efektivně ukládat, spravovat a přistupovat k datům.
  • Uživatelé mohou přidávat, odebírat nebo manipulovat s daty podle svých potřeb, aniž by museli vytvářet pole od začátku.
  • Optimalizuje rozložení paměti objektů.
  • Snadno změňte velikost pole během běhu.
  • Výkon se zlepšuje, když pracuje s velkými daty.

Vektor S Ukazatelem Třídy

Můžete také použít a vektor objektů v C++ k uložení adresy objektu namísto přímého vkládání objektů do vektorů. Zde je příklad pro takový případ:

#include
#include
použitím jmenný prostor std ;
třída majitel
{
veřejnost :
název řetězce ;
} ;
int hlavní ( )
{
vektorová místa ;
majitel * s1 = Nový majitel ( ) ;
s1 - > název = 'Alex' ;
majitel * s2 = Nový majitel ( ) ;
s2 - > název = 'Sám' ;
stránky. zatlačit zpátky ( s1 ) ;
stránky. zatlačit zpátky ( s2 ) ;
pro ( auto to : stránky ) {
cout << 'Majitel:' < název
<< 'ID vlastníka:' << to << endl ;
}
vrátit se 0 ;
}

V tomto kódu jsme použili a vektor objektů v C++ k uložení adresy objektu pojmenovaného jako „vlastník“ namísto přímého vkládání objektů do vektoru. Zde jsme použili šipkový operátor pro přístup k členům objektu.

Závěr

Užitečný kontejner v C++, který umožňuje uživatelům ukládat více objektů stejného typu na jedno místo, se nazývá vektor objektů. Pomáhá to udělat váš kód efektivnější a flexibilnější. Dále pomocí vektorů objektů můžete snadno manipulovat a přistupovat k datům, což vám pomůže snadno psát složitější programy.