W tym artykule zbadamy kluczowe funkcje wektory W C ++, w tym sposób ich deklarowania i inicjowania, jak dodawać i usuwać elementy, jak uzyskać dostęp do poszczególnych elementów oraz jak pracować z wektorami za pomocą iteratorów.
Jakie są wektory w C++
Wektory W C ++ to potężny i dynamiczny pojemnik, który zapewnia strukturę podobną do tablicy, z możliwością zmiany rozmiaru w czasie wykonywania. Oferują elastyczną alokacja pamięci i zapewniają wydajne przechowywanie dla kolekcji elementów. Wektory można inicjować z różnymi wartościami, a elementy można łatwo dodać lub usunąć. Ponadto, wektory Zapewnij różne metody dostępu i manipulowania ich elementami, w tym stosowanie iteratorów.
Wektory są zawarte w pliku standardowego nagłówka biblioteki C ++ i należy to zadeklarować przed włączeniem wektory W programach C ++.
Deklaracja wektora w C++
W C ++, a wektor jest zadeklarowane przez następującą składnię:
wektorzmienna_nazwa;
Tutaj typ danych to rodzaj danych, które wektor będzie zawierał, podczas gdy nazwa_zmienna to nazwa wektora, którą chcesz utworzyć. Zrozummy to przykładem:
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
wektorMyvector;
// Dodaj niektóre elementy do wektora
Myvector.push_back (1);
Myvector.push_back (2);
Myvector.push_back (3);
Myvector.push_back (4);
Cout << "Elements of the vector: ";
dla (int i = 0; i < myVector.size(); i++)
Cout << myVector[i] << " ";
Cout << endl;
powrót 0;
Wyjście
W tym przykładzie tworzono wektor o nazwie MyVector do przechowywania liczb całkowitych. Do wektora dodawane są cztery liczby całkowite za pomocą funkcji push_back (). Następnie używanie pętli iteruj elementy wektora i wyświetl je za pomocą operatora indeksu [].
Funkcje wektorów w C++
Oprócz funkcji członka w celu dodawania, usuwania i manipulowania elementami w wektor, Wektory C ++ obsługują również kilka innych kategorii funkcji, które są:
Zobaczmy te przykłady funkcji jeden po drugim.
1: Pojemność
Funkcje pojemności W C ++ są używane do zarządzania wielkością i pojemnością wektor. Funkcje te pozwalają uzyskać informacje o bieżącym rozmiarze i pojemności wektora, a także dostosować rozmiar i pojemność zgodnie z wymaganiami.
Poniższa tabela pokazuje szeroko stosowane funkcje w radzeniu sobie z pojemnością wektora.
pojemność() | Daje nam całkowitą pojemność posiadaną przez wektor w czasie wykonywania. |
rozmiar() | Funkcja wielkości daje nam całkowitą liczbę elementów posiadanych przez określony wektor. |
Zmień rozmiar() | Użyć do rozmiaru elementów kontenera. |
największy rozmiar() | Zwraca element najwyższej wartości wektora. |
Poniżej znajduje się przykład programu C ++, który ilustruje funkcje pojemności w c++.
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
wektorA;
A.push_back (1);
A.push_back (2);
A.push_back (3);
A.push_back (4);
A.push_back (5);
A.push_back (6);
Cout<<"Vector before resizing :";
dla (int i = 0; i < a.size(); i++)
Cout<
Cout<A.rozmiar (4);
Cout<<"Vector after resizing :";
dla (int i = 0; i < a.size(); i++)
Cout<
Cout << "\nCapacity: " << a.capacity();
Cout << "\nSize: " << a.size();
Cout << "\nMax_Size: " << a.max_size();
powrót 0;
Powyższy kod utworzył wektor A i dodał do niego elementy za pomocą pętli i push_back funkcjonować. Następnie wykorzystał funkcje pojemności pojemność(), rozmiar(), I największy rozmiar() Aby wydrukować informacje o pojemności, rozmiaru i maksymalnej wielkości wektora. Kod również używał Zmień rozmiar() funkcja w celu zmniejszenia rozmiaru wektora do 4 i wydrukuje nowy rozmiar za pomocą rozmiar().
Wyjście
2: Dostęp do elementu
Dostęp do elementu W wektorach C ++ odnosi się do możliwości odczytu i modyfikowania poszczególnych elementów wektora według ich indeksu. Istnieje kilka funkcji w C ++, które zapewniają dostęp do elementów do wektorów:
przód() | Zwróć początkowy element wektora |
z powrotem() | Podaj nam element końcowy obecnego wektora |
Na() | w (a): zawiera odniesienie do elementu w wektorze w punkcie „a” |
Przykład programu C ++ Funkcja dostępu do elementu podano poniżej:
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
wektorA;
int n, b;
Cout<<"Please Enter Size of vector: ";
cin >> n;
Cout<<"Enter vector Elements one by one:\n";
dla (int i = 1; i<=n;i++)
cin >> b;
A.push_back (b);
Cout<<"\nVector Value at Position 2: "<Cout<<"\nFirst element of the vector: "< Cout<<"\nLast element of the vector: "< powrót 0;
Powyższy kod utworzył wektor A i skłonił użytkownika do wprowadzenia rozmiaru wektora i jego elementów. Następnie użył push_back () funkcja, aby dodać elementy do wektora i wyświetlić wartość w indeksie 2 za pomocą Na() funkcjonować. Kod również używał przód() I z powrotem() funkcje wyświetlania odpowiednio pierwszych i ostatnich elementów wektora.
Wyjście
3: Modyfikatory
Modyfikatory są funkcjami, które pozwalają zmienić zawartość wektora poprzez dodanie lub usuwanie elementów. Istnieje kilka funkcji modyfikatora dostępnych w wektorach C ++ podanych w poniższej tabeli:
przydzielać() | Dodaje nowe elementy do określonego miejsca. |
push_back () | Zmusza komponenty w kierunku od tyłu. |
zamieniać() | Korzystając z innego wektora tego samego typu, elementy danych pojedynczej zmiany wektora. |
jasne() | Jest wykorzystywany do wyeliminowania każdego elementu obiektu wektorowego. |
Przykład kodu C ++ za pomocą modyfikatorów.
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
wektorA;
A.przypisać (3, 5);
Cout << "Elements of Vectors are: ";
dla (int i = 0; i < a.size(); i++)
Cout << a[i] << " ";
wektorVEC1, VEC2;
VEC1.push_back (1);
VEC1.push_back (2);
VEC2.push_back (3);
VEC2.push_back (4);
Cout << "\n\nVector number 1: ";
dla (int i = 0; i < vec1.size(); i++)
Cout << vec1[i] << " ";
Cout << "\nVector number 2: ";
dla (int i = 0; i < vec2.size(); i++)
Cout << vec2[i] << " ";
// swaps v1 i v2
VEC1.swap (VEC2);
Cout << "\nAfter Swap Vector Elements \nVector number 1: ";
dla (int i = 0; i < vec1.size(); i++)
Cout << vec1[i] << " ";
Cout << "\nVector number 2: ";
dla (int i = 0; i < vec2.size(); i++)
Cout << vec2[i] << " ";
W powyższym kodzie przydzielać() funkcja służy do przypisania wartości do elementu wektora. Następnie tworzone są dwa wektory, a ich elementy są drukowane za pomocą pętli. Następnie zamieniać() Funkcja służy do wymiany elementów dwóch wektorów. Wreszcie elementy dwóch wektorów są drukowane ponownie po zamianie za pomocą pętli.
Wyjście
4: Iteratory
W C ++ iteratory zachowują się jak wskaźniki, umożliwiając sekwencyjnie dostęp do elementu wektorów. Iteratory w zasadzie zwiększają wydajność programu. Poniższa tabela przedstawia opis funkcji używanych w iteratorach.
zaczynać() | Wskazując na pierwszą wartość iteratora wektora w C++. |
koniec() | Zwraca ostatni element wskazujący na pozycję końcową wektora do iteratora. |
Następny() | Zwraca nowy iterator, do którego iterator wskazałby, jeśli pozycje określone w jego parametrach były rozwinięte. |
Przykładowy kod o iteratorach podano poniżej:
#włączać
#włączać
#włączać
za pomocą przestrzeni nazw Std;
int main ()
wektora = 3, 4, 5, 6, 7;
wektor:: iterator p = a.zaczynać();
wektor:: iterator f = a.koniec();
Cout << "The position of iterator using begin() : ";
Cout << *p << " ";
Cout << endl;
auto z = następny (p, 3);
Cout << "Itrator new position using next() : ";
Cout << *z << " ";
powrót 0;
Powyższy kod zadeklarował wektor „a” z wartościami i inicjuje dwa iteratorów do początku i końca wektora za pomocą "zaczynać()" I "koniec()" funkcje odpowiednio. Następnie użył "Następny()" funkcja, aby rozwijać iterator o 3 pozycje i wydrukował wartość w nowej pozycji iterator.
Wyjście
Wniosek
Wektory W C ++ są wszechstronne i dynamiczne struktury danych, które zapewniają wydajne i elastyczne sposoby przechowywania i manipulowania zbiorem danych. Dzięki ich zdolności do dynamicznego zmiany rozmiaru i wydajnego dostępu do elementów, są one potężnym narzędziem do różnych zadań programistycznych. Niezależnie od tego, czy pracujesz nad prostymi czy złożonymi projektami, rozumiesz wektory a ich możliwości mogą pomóc Ci napisać bardziej wydajny i skuteczny kod.