Użycie funkcji Vector Pop_Back() w C++

Uzycie Funkcji Vector Pop Back W C



Rozmiar wektora można zmniejszyć, korzystając z różnych wbudowanych funkcji języka C++. Funkcja pop_back() jest jedną z nich. Służy do usunięcia ostatniego elementu wektora z tyłu i zmniejszenia rozmiaru wektora o 1. Jednak ostatni element wektora nie jest usuwany trwale, jak funkcja erase(). W tym samouczku wyjaśniono różne zastosowania tej funkcji.

Składnia:

wektor :: pop_back ( ) ;

Funkcja ta nie ma żadnych argumentów i nic nie zwraca.







Warunek wstępny:

Przed sprawdzeniem przykładów w tym samouczku musisz sprawdzić, czy w systemie jest zainstalowany kompilator g++. Jeśli używasz Visual Studio Code, zainstaluj niezbędne rozszerzenia, aby skompilować kod źródłowy C++ w celu utworzenia kodu wykonywalnego. W tym przypadku do skompilowania i wykonania kodu C++ użyto aplikacji Visual Studio Code. Sposoby zmniejszenia rozmiaru wektora za pomocą funkcji pop_back() zostały pokazane w dalszej części tutoriala.



Przykład-1: Usuń wiele elementów z wektora

Utwórz plik C++ z następującym kodem, aby usunąć dwa elementy z kontenera wektorów, zmniejszając rozmiar wektora za pomocą funkcji pop_back(). W kodzie zadeklarowano wektor składający się z 5 wartości łańcuchowych. Funkcja pop_back() została tu wywołana dwukrotnie w celu tymczasowego usunięcia dwóch ostatnich elementów z wektora i zmniejszenia rozmiaru wektora o 2. Zawartość wektora została wydrukowana dwa razy przed i po użyciu funkcji pop_back().



//Dołącz niezbędne biblioteki

#include

#uwzględnij

za pomocą przestrzeń nazw st ;

wew główny ( ) {

//Zadeklaruj wektor wartości łańcuchowych

wektor < strunowy > kwiaty = { 'Róża' , „Lita” , 'Aksamitka' , 'Tulipan' , „Lew wodny” } ;

cout << „Wartości wektora: \N ' ;

//Iteruj wektor za pomocą pętli, aby wydrukować wartości

Do ( wew I = 0 ; I < kwiaty. rozmiar ( ) ; ++ I )

cout << kwiaty [ I ] << ' ' ;

cout << ' \N ' ;

//Usuń dwie ostatnie wartości z wektora

kwiaty. pop_back ( ) ;

kwiaty. pop_back ( ) ;

cout << ' \N Wartości wektora po usunięciu: \N ' ;

//Iteruj wektor za pomocą pętli, aby wydrukować wartości

Do ( wew I = 0 ; I < kwiaty. rozmiar ( ) ; ++ I )

cout << kwiaty [ I ] << ' ' ;

cout << ' \N ' ;

powrót 0 ;

}

Wyjście:

Po wykonaniu powyższego kodu pojawią się następujące dane wyjściowe.





Przykład-2:  Utwórz nowy wektor z innego wektora

Utwórz plik C++ z następującym kodem, aby wstawić określone wartości do pustego wektora z innego wektora, usuwając elementy za pomocą funkcji pop_back(). W kodzie zadeklarowano wektor 8 liczb całkowitych oraz pusty wektor typu całkowitego. Pętla „while” została wykorzystana do iteracji każdego elementu pierwszego wektora i wstawienia elementu do nowego wektora, jeśli liczba jest podzielna przez 2. Tutaj również obliczono sumę wszystkich liczb parzystych. Każdy element pierwszego wektora zostanie usunięty przez funkcję pop_back() w każdej iteracji pętli, aby osiągnąć warunek zakończenia pętli.



//Dołącz niezbędne biblioteki

#include

#uwzględnij

za pomocą przestrzeń nazw st ;

wew główny ( )

{

//Zadeklaruj wektor danych całkowitych

wektor < wew > intWektor { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;

//Zadeklaruj pusty wektor

wektor < wew > nowyWektor ;

cout << „Wartości pierwotnego wektora: \N ' ;

//Iteruj wektor za pomocą pętli, aby wydrukować wartości

Do ( wew I = 0 ; I < intWektor. rozmiar ( ) ; ++ I )

cout << intWektor [ I ] << ' ' ;

cout << ' \N ' ;

//Zainicjuj wynik

wew wynik = 0 ;

//Iteruj pętlę, aż wektor stanie się pusty

chwila ( ! intWektor. pusty ( ) )

{

/*

Znajdź liczby parzyste, które chcesz wstawić do nowego wektora

i obliczyć sumę liczb parzystych

*/


Jeśli ( intWektor. z powrotem ( ) % 2 == 0 )

{

wynik + = intWektor. z powrotem ( ) ;

nowyWektor. push_back ( intWektor. z powrotem ( ) ) ;

}

//Usuń element z końca intVactor

intWektor. pop_back ( ) ;

}

cout << „Wartości nowego wektora: \N ' ;

//Iteruj wektor za pomocą pętli, aby wydrukować wartości

Do ( wew I = 0 ; I < nowyWektor. rozmiar ( ) ; ++ I )

cout << nowyWektor [ I ] << ' ' ;

cout << ' \N ' ;

cout << „Suma wszystkich liczb parzystych: „ << wynik << ' \N ' ;

powrót 0 ;

}

Wyjście:

Po wykonaniu powyższego kodu pojawią się następujące dane wyjściowe. W pierwszym wektorze były trzy liczby parzyste. Jest ich 8, 2 i 4.

Przykład 3: Sprawdź, czy ostatni element wektora został usunięty, czy nie

Wspomniano wcześniej, że pop_back() nie usuwa elementów trwale z wektora, lecz usuwa element jedynie poprzez zmniejszenie rozmiaru wektora. Zatem usunięty element pozostaje w tej samej pozycji, dopóki wektor nie zwiększy rozmiaru i nie zastąpi go innym elementem. Utwórz plik C++ z następującym kodem, aby sprawdzić, czy element usunięty przez funkcję pop_back() istnieje, czy nie. Ostatnia pozycja oryginalnego wektora została wydrukowana przed i po użyciu funkcji pop_back().

#include

#uwzględnij

za pomocą przestrzeń nazw st ;

wew główny ( )

{

//Zadeklaruj wektor danych całkowitych

wektor < wew > intWektor { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;

//Zadeklaruj pusty wektor

wektor < wew > nowyWektor ;

//Zadeklaruj zmienną całkowitą

wew długość ;

//Wydrukuj ostatni element w oparciu o rozmiar wektora

długość = intWektor. rozmiar ( ) ;

cout << „Aktualny rozmiar wektora:” << długość << ' \N ' ;

cout << „Ostatnia wartość wektora przed usunięciem:” << intWektor [ długość - 1 ] << ' \N ' ;

//Usuń element z końca wektora

intWektor. pop_back ( ) ;

//Wydrukuj ostatni element w oparciu o rozmiar wektora po usunięciu

długość = intWektor. rozmiar ( ) ;

cout << „Aktualny rozmiar wektora:” << długość << ' \N ' ;

cout << „Ostatnia wartość wektora po usunięciu:” << intWektor [ długość ] << ' \N ' ;

powrót 0 ;

}

Wyjście:

Po wykonaniu powyższego kodu pojawią się następujące dane wyjściowe. Wynik pokazuje, że rozmiar wektora został zmniejszony o 1, ale element ostatniej pozycji pierwotnego wektora nadal istnieje.

Wniosek:

W tym samouczku na prostych przykładach opisano trzy różne zastosowania funkcji pop_back(). Główny cel korzystania z tej funkcji stanie się jasny dla czytelników po przećwiczeniu przykładów z tego tutoriala.