Co to jest wektor obiektów C ++

Co to jest wektor obiektów C ++
Jako początkujący C ++ możesz usłyszeć termin „wektor obiektów". Nie masz jednak właściwego zrozumienia, co oznacza ten termin i jak można go użyć w programie C ++.

Jeśli jesteś tym, który szukasz wskazówek wektor obiektów W C ++ postępuj zgodnie z wytycznymi tego artykułu.

Jaki jest wektor obiektów w C++

W C ++, a wektor obiektów to struktura danych, która pozwala użytkownikom przechowywać zestaw powiązanych obiektów lub typów danych. Działa podobnie do zwykłej tablicy i oferuje przewagę użytkownikom o rozmiar. Ta funkcja jest szczególnie pomocna podczas pracy z dużymi zestawami danych o różnych rozmiarach.

Jak utworzyć wektor obiektów w c++

Wektor obiektów klasowych wydaje się być przykładem takiego niestandardowego wektora, w którym można przechowywać wiele instancji klasowych.

Poniższy program C ++ utworzy wektor obiektów klasowych.

#włączać
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int rand_integer (int x, int y)

return (x + rand () % y);

String rand_string (int len1)

String Str1;
dla (int i = 0; i < len1; i++)
char ch = „a” + rand () % 26;
str1.push_back (ch);

return STR1;

Pracownik klasy

Nazwa ciągu;
int id;
int wiek;
publiczny:
void getter ()

name = rand_string (10);
id = rand_integer (10, 30);
wiek = rand_integer (25, 40);

void disp ()

Cout << name << "\t" << id << "\t" << age << "\t" << "\n";

;
int main ()

wektor v1;
Pracownicy;
dla (int i = 0; i < 5; i++)

S.rębacz();
v1.push_back (s);

dla (int i = 0; i < 5; i++)

v1 [i].disp ();

powrót 0;

W powyższym kodzie losowo wygenerowaliśmy dane (nazwa, wiek i identyfikator) pięciu pracowników korzystających z wektora obiektów klasowych o nazwie „Pracownik". Gdzie zdefiniowaliśmy zakres 10-30 dla identyfikatora pracownika i 25-40 dla ich wieku.

Zalety używania wektora obiektów w c++

Istnieje kilka zalet używania wektora obiektów w C ++, które są następujące:

  • Pozwala użytkownikom wydajnie przechowywać, zarządzać i uzyskiwać dostęp do danych.
  • Użytkownicy mogą dodawać, usuwać lub manipulować danymi zgodnie z ich potrzebami bez konieczności tworzenia tablicy od zera.
  • Optymalizuje układ pamięci obiektów.
  • Łatwo rozmiar macierzy w czasie wykonywania.
  • Wydajność jest poprawiona, gdy zajmuje się dużymi danymi.

Wektor posiadający wskaźnik klasowy

Możesz także użyć wektor obiektów w C ++ do przechowywania adresu obiektu zamiast bezpośrednio wstawienia obiektów do wektorów. Oto przykład takiego przypadku:

#włączać
#włączać
za pomocą przestrzeni nazw Std;
właściciel klasy

publiczny:
Nazwa ciągu;
;
int main ()

Witryny wektorowe;
właściciel* s1 = nowy właściciel ();
s1-> name = "Alex";
właściciel* s2 = nowy właściciel ();
s2-> name = "Sam";
strony.push_back (s1);
strony.push_back (s2);
dla (auto it: witryny)
Cout << "Owner:" << " ID of Owner:" << it << endl;

powrót 0;

W tym kodzie użyliśmy wektor obiektów w C ++ do przechowywania adresu obiektu o nazwie „właściciela” zamiast bezpośredniego wkładania obiektów do wektora. Tutaj użyliśmy operatora strzałek, aby uzyskać dostęp do członków obiektu.

Wniosek

Przydatny kontener w C ++, który pozwala użytkownikom przechowywać wiele obiektów tego samego typu w jednym miejscu, nazywa się wektor obiektów. Pomaga uczynić kod bardziej wydajnym i elastycznym. Ponadto, używając wektorów obiektów, możesz łatwo manipulować i uzyskać dostęp do danych, które pomagają z łatwością pisać bardziej złożone programy.