Wektory są takie same jak tablice dynamiczne z możliwością automatycznej zmiany rozmiaru po wstawieniu lub usunięciu elementu, a ich przechowywanie jest obsługiwane automatycznie przez kontener.
wektor::push_back()Funkcja push_back() służy do wpychania elementów do wektora od tyłu. Nowa wartość wstawiana jest do wektora na końcu, po bieżącym ostatnim elemencie i wielkość kontenera zwiększa się o 1.
Składnia:
vectorname.push_back(value) Parameters : The value to be added in the back is passed as the parameter Result : Adds the value mentioned as the parameter to the back of the vector named as vectorname>
Przykłady:
Input: myvector = {1, 2, 3, 4, 5}; myvector.push_back(6); Output: 1, 2, 3, 4, 5, 6 Input: myvector = {5, 4, 3, 2, 1}; myvector.push_back(0); Output: 5, 4, 3, 2, 1, 0>
Błędy i wyjątki
1. Silna gwarancja wyjątku – jeśli zostanie zgłoszony wyjątek, w kontenerze nie zachodzą żadne zmiany.
2. Jeśli wartość przekazana jako argument nie jest obsługiwana przez wektor, wykazuje niezdefiniowane zachowanie.
przykład danych json
C++
// CPP program to illustrate> // push_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >mójwektor{1, 2, 3, 4, 5 };> > myvector.push_back(6);> > > // Vector becomes 1, 2, 3, 4, 5, 6> > > for> (> auto> it = myvector.begin(); it != myvector.end(); ++it)> > cout <<> ' '> << *it;> }> |
>
klucz ins
>Wyjście
1 2 3 4 5 6>wektor::pop_back()()
Funkcja pop_back() służy do wyskakiwania lub usuwania elementów wektora z tyłu. Wartość jest usuwana z wektora od końca, a rozmiar kontenera zmniejsza się o 1.
Składnia:
vectorname.pop_back() Parameters : No parameters are passed Result : Removes the value present at the end or back of the given vector named as vectorname>
Przykłady:
Input : myvector = {1, 2, 3, 4, 5}; myvector.pop_back(); Output :1, 2, 3, 4>
Input : myvector = {5, 4, 3, 2, 1}; myvector.pop_back(); Output :5, 4, 3, 2>
Błędy i wyjątki
1. Gwarancja braku rzutu – jeśli kontener nie jest pusty, funkcja nigdy nie zgłasza wyjątków.
2. Jeśli wektor jest pusty, wykazuje niezdefiniowane zachowanie.
C++
wartość logiczna na ciąg Java
// CPP program to illustrate> // pop_back() function> #include> #include> using> namespace> std;> > int> main()> {> > vector<> int> >mójwektor{1, 2, 3, 4, 5 };> > myvector.pop_back();> > > // Vector becomes 1, 2, 3, 4> > > for> (> auto> it = myvector.begin(); it != myvector.end(); ++it)> > cout <<> ' '> << *it;> }> |
>
>Wyjście
1 2 3 4>
Czy pop_back() usuwa wartości wraz z elementami?
Po wywołaniu funkcji pop_back() usuwany jest ostatni element, wartości I elementy są w tym przypadku jednym i tym samym. Wywoływany jest destruktor przechowywanego obiektu, a długość wektora jest usuwana o 1. Jeśli pojemność kontenera nie zostanie zmniejszona, nadal można uzyskać dostęp do poprzedniej lokalizacji w pamięci, ale w tym przypadku nie ma sensu uzyskiwanie dostępu do już otwartego element, ponieważ spowoduje to niezdefiniowane zachowanie .
Aplikacja: push_back() i pop_back()
Mając pusty wektor, dodaj do niego liczby całkowite za pomocą funkcji push_back, a następnie oblicz jego rozmiar.
Input : 1, 2, 3, 4, 5, 6 Output : 6>
Algorytm
rozmiar tekstu, lateks
1. Dodaj elementy do wektora za pomocą funkcji push_back
2. Sprawdź, czy rozmiar wektora wynosi 0, jeśli nie, zwiększ zmienną licznika zainicjowaną jako 0 i wstaw element tylny.
3. Powtarzaj ten krok, aż rozmiar wektora osiągnie 0.
4. Wydrukuj końcową wartość zmiennej.
C++
// CPP program to illustrate> // Application of push_back and pop_back function> #include> #include> using> namespace> std;> > int> main()> {> > int> count = 0;> > vector<> int> >mójwektor;> > myvector.push_back(1);> > myvector.push_back(2);> > myvector.push_back(3);> > myvector.push_back(4);> > myvector.push_back(5);> > myvector.push_back(6);> > while> (!myvector.empty()) {> > count++;> > myvector.pop_back();> > }> > cout << count;> > return> 0;> }> |
>
>
pomiń listęWyjście
6>
Zobaczmy różnice w formie tabelarycznej, jak pokazano poniżej, w następujący sposób:
wektor::push_back() | wektor::pop_back() |
Służy do dodania nowego elementu na końcu wektora. | Służy do usunięcia nowego elementu na końcu wektora. |
Jego składnia to -: push_back(wartość); | Jego składnia to -: pop_back(); |
Jego parametrem jest wartość, którą chcemy dodać na końcu wektora. | Nie przyjmuje żadnych parametrów. |
Nie ma żadnego typu zwrotu. | Nie ma żadnej wartości zwracanej. |
Jego złożoność jest stała. | Jego złożoność jest stała. |