C++'da Vector Pop_Back() Fonksiyonunun Kullanımı

C Da Vector Pop Back Fonksiyonunun Kullanimi



Vektörün boyutu C++'ın farklı yerleşik fonksiyonları kullanılarak azaltılabilir. pop_back() işlevi bunlardan biridir. Vektörün son elemanını arkadan çıkarmak ve vektörün boyutunu 1 azaltmak için kullanılır. Ancak vektörün son elemanı, delete() fonksiyonu gibi kalıcı olarak kaldırılmaz. Bu öğreticide bu işlevin farklı kullanımları açıklanmıştır.

Sözdizimi:

vektör :: pop_back ( ) ;

Bu fonksiyonun herhangi bir argümanı yoktur ve hiçbir şey döndürmez.







Ön koşul:

Bu eğitimin örneklerini kontrol etmeden önce g++ derleyicisinin sistemde kurulu olup olmadığını kontrol etmelisiniz. Visual Studio Code kullanıyorsanız yürütülebilir kodu oluşturmak amacıyla C++ kaynak kodunu derlemek için gerekli uzantıları yükleyin. Burada C++ kodunu derlemek ve yürütmek için Visual Studio Code uygulaması kullanılmıştır. Pop_back() işlevini kullanarak vektörün boyutunu azaltmanın yolları bu eğitimin bir sonraki bölümünde gösterilmiştir.



Örnek-1: Vektörden birden fazla öğeyi kaldırın

pop_back() işlevini kullanarak vektörün boyutunu azaltarak vektör kapsayıcısından iki öğeyi kaldırmak için aşağıdaki kodla bir C++ dosyası oluşturun. Kodda 5 dize değerinden oluşan bir vektör bildirildi. Vektörden son iki öğeyi geçici olarak kaldırmak ve vektörün boyutunu 2 oranında azaltmak için pop_back() işlevi burada iki kez çağrıldı. Vektörün içeriği, pop_back() işlevi kullanılmadan önce ve sonra iki kez yazdırıldı.



//Gerekli kütüphaneleri dahil et

#include

#include

kullanarak ad alanı std ;

int ana ( ) {

//Dize değerlerinin bir vektörünü tanımlayın

vektör < sicim > Çiçekler = { 'Gül' , 'Lity' , 'Kadife çiçeği' , 'Lale' , 'Su Aslanı' } ;

cout << 'Vektörün değerleri: \N ' ;

//Değerleri yazdırmak için döngüyü kullanarak vektörü yineleyin

için ( int Ben = 0 ; Ben < Çiçekler. boyut ( ) ; ++ Ben )

cout << Çiçekler [ Ben ] << ' ' ;

cout << ' \N ' ;

//Vektörden son iki değeri kaldırıyoruz

Çiçekler. pop_back ( ) ;

Çiçekler. pop_back ( ) ;

cout << ' \N Kaldırıldıktan sonra vektörün değerleri: \N ' ;

//Değerleri yazdırmak için döngüyü kullanarak vektörü yineleyin

için ( int Ben = 0 ; Ben < Çiçekler. boyut ( ) ; ++ Ben )

cout << Çiçekler [ Ben ] << ' ' ;

cout << ' \N ' ;

geri dönmek 0 ;

}

Çıktı:

Yukarıdaki kodu çalıştırdıktan sonra aşağıdaki çıktı görünecektir.





Örnek-2:  Başka bir vektörden yeni bir vektör oluşturma

Pop_back() işlevini kullanarak öğeleri kaldırarak başka bir vektördeki boş bir vektöre belirli değerler eklemek için aşağıdaki kodla bir C++ dosyası oluşturun. Kodda 8 tamsayıdan oluşan bir vektör ve tamsayı tipinde boş bir vektör bildirildi. 'While' döngüsü, ilk vektörün her bir öğesini yinelemek ve sayı 2'ye bölünebiliyorsa öğeyi yeni vektöre eklemek için kullanıldı. Tüm çift sayıların toplamı da burada hesaplandı. Döngünün sonlanma koşuluna ulaşmak için döngünün her yinelemesinde ilk vektörün her bir öğesi pop_back() işlevi tarafından kaldırılacaktır.



//Gerekli kütüphaneleri dahil et

#include

#include

kullanarak ad alanı std ;

int ana ( )

{

//Tamsayı verilerinin bir vektörünü tanımlayın

vektör < int > intVektör { 5 , 9 , 4 , 7 , 2 , 8 , 1 , 3 } ;

//Boş bir vektör tanımlıyoruz

vektör < int > yeniVektör ;

cout << 'Orijinal vektörün değerleri: \N ' ;

//Değerleri yazdırmak için döngüyü kullanarak vektörü yineleyin

için ( int Ben = 0 ; Ben < intVector. boyut ( ) ; ++ Ben )

cout << intVektör [ Ben ] << ' ' ;

cout << ' \N ' ;

//sonucu başlat

int sonuç = 0 ;

//Vektör boşalıncaya kadar döngüyü yinele

sırasında ( ! intVector. boş ( ) )

{

/*

NewVector'a eklenecek çift sayıları bulun

ve çift sayıların toplamını hesaplayın

*/


eğer ( intVector. geri ( ) % 2 == 0 )

{

sonuç + = intVector. geri ( ) ;

yeniVektör. Geri itmek ( intVector. geri ( ) ) ;

}

//intVactor'ın sonundaki öğeyi kaldır

intVector. pop_back ( ) ;

}

cout << 'Yeni vektörün değerleri: \N ' ;

//Değerleri yazdırmak için döngüyü kullanarak vektörü yineleyin

için ( int Ben = 0 ; Ben < yeniVektör. boyut ( ) ; ++ Ben )

cout << yeniVektör [ Ben ] << ' ' ;

cout << ' \N ' ;

cout << 'Bütün çift sayıların toplamı : ' << sonuç << ' \N ' ;

geri dönmek 0 ;

}

Çıktı:

Yukarıdaki kodu çalıştırdıktan sonra aşağıdaki çıktı görünecektir. İlk vektörde üç çift sayı vardı. 8, 2 ve 4 var.

Örnek-3: Vektörün son elemanının kaldırılıp kaldırılmadığını kontrol edin

Daha önce pop_back() fonksiyonunun öğeleri vektörden kalıcı olarak kaldırmadığı ve yalnızca vektörün boyutunu küçülterek öğeyi kaldırdığı belirtilmişti. Böylece kaldırılan öğe, vektörün boyutu artana ve öğenin yerini başka bir öğeyle değiştirene kadar aynı konumda kalır. pop_back() işlevi tarafından kaldırılan öğenin var olup olmadığını kontrol etmek için aşağıdaki kodla bir C++ dosyası oluşturun. Orijinal vektörün son konumu pop_back() işlevi kullanılmadan önce ve sonra yazdırılmıştır.

#include

#include

kullanarak ad alanı std ;

int ana ( )

{

//Tamsayı verilerinin bir vektörünü tanımlayın

vektör < int > intVektör { 54 , 19 , 46 , 72 , 22 , 83 , 10 , 53 } ;

//Boş bir vektör tanımlıyoruz

vektör < int > yeniVektör ;

//Bir tamsayı değişkeni tanımlıyoruz

int uzunluk ;

//Vektörün boyutuna göre son öğeyi yazdır

uzunluk = intVector. boyut ( ) ;

cout << 'Vektörün geçerli boyutu:' << uzunluk << ' \N ' ;

cout << 'Vektörün kaldırmadan önceki son değeri:' << intVektör [ uzunluk - 1 ] << ' \N ' ;

//Vektörün sonundaki öğeyi kaldır

intVector. pop_back ( ) ;

//Kaldırdıktan sonra vektörün boyutuna göre son öğeyi yazdır

uzunluk = intVector. boyut ( ) ;

cout << 'Vektörün geçerli boyutu:' << uzunluk << ' \N ' ;

cout << 'Vektörün kaldırıldıktan sonraki son değeri:' << intVektör [ uzunluk ] << ' \N ' ;

geri dönmek 0 ;

}

Çıktı:

Yukarıdaki kodu çalıştırdıktan sonra aşağıdaki çıktı görünecektir. Çıktı, vektörün boyutunun 1 oranında azaldığını ancak orijinal vektörün son konumunun öğesinin hala mevcut olduğunu gösterir.

Çözüm:

Bu eğitimde pop_back() işlevinin üç farklı kullanımı basit örnekler kullanılarak açıklanmıştır. Bu öğreticinin örnekleri uygulandıktan sonra okuyucular için bu işlevi kullanmanın asıl amacı netleşecektir.