การใช้ฟังก์ชัน Vector Pop_Back() ใน C++

Use Vector Pop_back Function C



ขนาดของเวกเตอร์สามารถลดลงได้โดยใช้ฟังก์ชันในตัวที่แตกต่างกันของ C++ ฟังก์ชัน pop_back() เป็นหนึ่งในนั้น ใช้เพื่อลบองค์ประกอบสุดท้ายของเวกเตอร์ออกจากด้านหลังและลดขนาดของเวกเตอร์ลง 1 แต่องค์ประกอบสุดท้ายของเวกเตอร์จะไม่ถูกลบอย่างถาวรเช่นฟังก์ชัน Erase() มีการอธิบายการใช้งานต่างๆ ของฟังก์ชันนี้ในบทช่วยสอนนี้

ไวยากรณ์:

เวกเตอร์::pop_back();

ฟังก์ชันนี้ไม่มีอาร์กิวเมนต์ใดๆ และไม่คืนค่าใดๆ







ข้อกำหนดเบื้องต้น:

ก่อนตรวจสอบตัวอย่างของบทช่วยสอนนี้ คุณต้องตรวจสอบก่อนว่าคอมไพเลอร์ g++ ติดตั้งหรือไม่อยู่ในระบบ หากคุณกำลังใช้ Visual Studio Code ให้ติดตั้งส่วนขยายที่จำเป็นเพื่อคอมไพล์ซอร์สโค้ด C++ เพื่อสร้างโค้ดที่เรียกใช้งานได้ ที่นี่ แอปพลิเคชัน Visual Studio Code ถูกใช้เพื่อคอมไพล์และรันโค้ด C++ วิธีการลดขนาดของเวกเตอร์โดยใช้ฟังก์ชัน pop_back() ได้แสดงไว้ในส่วนถัดไปของบทช่วยสอนนี้



ตัวอย่างที่ 1: ลบองค์ประกอบหลายรายการออกจากเวกเตอร์

สร้างไฟล์ C++ ด้วยรหัสต่อไปนี้เพื่อลบสององค์ประกอบออกจากคอนเทนเนอร์เวกเตอร์โดยลดขนาดของเวกเตอร์โดยใช้ฟังก์ชัน pop_back() มีการประกาศเวกเตอร์ค่าสตริง 5 ค่าในโค้ด ฟังก์ชัน pop_back() ถูกเรียกสองครั้งที่นี่เพื่อลบสององค์ประกอบสุดท้ายออกจากเวกเตอร์ชั่วคราว และลดขนาดของเวกเตอร์ลง 2 เนื้อหาของเวกเตอร์ถูกพิมพ์สองครั้งก่อนและหลังการใช้ฟังก์ชัน pop_back()



//รวมไลบรารีที่จำเป็น

#รวม

#รวม

โดยใช้ เนมสเปซชั่วโมง;

intหลัก() {

//ประกาศเวกเตอร์ของค่าสตริง

เวกเตอร์<สตริง>ดอกไม้= {'ดอกกุหลาบ','ลิตี้','ดาวเรือง','ทิวลิป','น้ำหลี่'};

ค่าใช้จ่าย << 'ค่าของเวกเตอร์ :NS';

//วนซ้ำเวกเตอร์โดยใช้การวนซ้ำเพื่อพิมพ์ค่า

สำหรับ(intผม= 0;ผม<ดอกไม้.ขนาด(); ++ผม)

ค่าใช้จ่าย <<ดอกไม้[ผม] << '';

ค่าใช้จ่าย << 'NS';

//ลบสองค่าสุดท้ายออกจาก vector

ดอกไม้.pop_back();

ดอกไม้.pop_back();

ค่าใช้จ่าย << 'NSค่าของเวกเตอร์หลังจากลบ :NS';

//วนซ้ำเวกเตอร์โดยใช้การวนซ้ำเพื่อพิมพ์ค่า

สำหรับ(intผม= 0;ผม<ดอกไม้.ขนาด(); ++ผม)

ค่าใช้จ่าย <<ดอกไม้[ผม] << '';

ค่าใช้จ่าย << 'NS';

กลับ 0;

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ดด้านบน





ตัวอย่างที่ 2: สร้างเวกเตอร์ใหม่จากเวกเตอร์อื่น

สร้างไฟล์ C++ ด้วยรหัสต่อไปนี้เพื่อแทรกค่าเฉพาะลงในเวกเตอร์ว่างจากเวกเตอร์อื่นโดยลบองค์ประกอบโดยใช้ฟังก์ชัน pop_back() มีการประกาศเวกเตอร์ของตัวเลขจำนวนเต็ม 8 ตัวและเวกเตอร์ว่างของประเภทจำนวนเต็มในโค้ด มีการใช้ลูป 'while' เพื่อวนซ้ำแต่ละองค์ประกอบของเวกเตอร์แรกและแทรกองค์ประกอบลงในเวกเตอร์ใหม่หากตัวเลขหารด้วย 2 ลงตัว ผลรวมของจำนวนคู่ทั้งหมดได้รับการคำนวณที่นี่เช่นกัน แต่ละองค์ประกอบของเวกเตอร์แรกจะถูกลบออกโดยฟังก์ชัน pop_back() ในการวนซ้ำแต่ละครั้งของลูปเพื่อให้ถึงเงื่อนไขการสิ้นสุดของลูป



//รวมไลบรารีที่จำเป็น

#รวม

#รวม

โดยใช้ เนมสเปซชั่วโมง;

intหลัก()

{

//ประกาศเวกเตอร์ของข้อมูลจำนวนเต็ม

เวกเตอร์<int>intVector{ 5,9,4,7,2,8,1,3 };

//ประกาศเวกเตอร์ว่าง

เวกเตอร์<int>ใหม่เวกเตอร์;

ค่าใช้จ่าย << 'ค่าของเวกเตอร์ดั้งเดิม :NS';

//วนซ้ำเวกเตอร์โดยใช้การวนซ้ำเพื่อพิมพ์ค่า

สำหรับ(intผม= 0;ผม<อินท์เวคเตอร์ขนาด(); ++ผม)

ค่าใช้จ่าย <<intVector[ผม] << '';

ค่าใช้จ่าย << 'NS';

//เริ่มต้นผลลัพธ์

intผลลัพธ์= 0;

//วนซ้ำจนกว่าเวกเตอร์จะว่างเปล่า

ในขณะที่(!อินท์เวคเตอร์ว่างเปล่า())

{

/ *

ค้นหาตัวเลขคู่ที่จะแทรกลงใน newVector

และคำนวณผลรวมของเลขคู่

* /


ถ้า (อินท์เวคเตอร์กลับ() % 2 == 0)

{

ผลลัพธ์+=อินท์เวคเตอร์กลับ();

ใหม่เวกเตอร์push_back(อินท์เวคเตอร์กลับ());

}

//ลบองค์ประกอบออกจากจุดสิ้นสุดของ intVactor

อินท์เวคเตอร์pop_back();

}

ค่าใช้จ่าย << 'ค่าของเวกเตอร์ใหม่ :NS';

//วนซ้ำเวกเตอร์โดยใช้การวนซ้ำเพื่อพิมพ์ค่า

สำหรับ(intผม= 0;ผม<ใหม่เวกเตอร์ขนาด(); ++ผม)

ค่าใช้จ่าย <<ใหม่เวกเตอร์[ผม] << '';

ค่าใช้จ่าย << 'NS';

ค่าใช้จ่าย << 'ผลรวมของเลขคู่ทั้งหมด : ' <<ผลลัพธ์<< 'NS';

กลับ 0;

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ดด้านบน มีเลขคู่สามตัวในเวกเตอร์แรก มี 8,2,4

ตัวอย่างที่ 3: ตรวจสอบว่าองค์ประกอบสุดท้ายของเวกเตอร์ถูกลบออกหรือไม่

มีการกล่าวไว้ก่อนหน้านี้ว่า pop_back() ไม่ได้ลบองค์ประกอบออกจากเวกเตอร์อย่างถาวร และจะลบองค์ประกอบโดยการลดขนาดของเวกเตอร์เท่านั้น ดังนั้น องค์ประกอบที่ถูกลบจะยังคงอยู่ในตำแหน่งเดิมจนกว่าขนาดของเวกเตอร์จะเพิ่มขึ้น และแทนที่องค์ประกอบด้วยองค์ประกอบอื่น สร้างไฟล์ C++ ด้วยรหัสต่อไปนี้เพื่อตรวจสอบองค์ประกอบที่ถูกลบโดยฟังก์ชัน pop_back() ว่ามีอยู่หรือไม่ ตำแหน่งสุดท้ายของเวกเตอร์ดั้งเดิมถูกพิมพ์ก่อนและหลังการใช้ฟังก์ชัน pop_back()

#รวม

#รวม

โดยใช้ เนมสเปซชั่วโมง;

intหลัก()

{

//ประกาศเวกเตอร์ของข้อมูลจำนวนเต็ม

เวกเตอร์<int>intVector{ 54,19,46,72,22,83,10,53 };

//ประกาศเวกเตอร์ว่าง

เวกเตอร์<int>ใหม่เวกเตอร์;

//ประกาศตัวแปรจำนวนเต็ม

intระยะเวลา;

//พิมพ์องค์ประกอบสุดท้ายตามขนาดของเวกเตอร์

ระยะเวลา=อินท์เวคเตอร์ขนาด();

ค่าใช้จ่าย << 'ขนาดปัจจุบันของเวกเตอร์:' <<ระยะเวลา<< 'NS';

ค่าใช้จ่าย << 'ค่าสุดท้ายของเวกเตอร์ก่อนลบ:' <<intVector[ระยะเวลา-1] << 'NS';

//ลบองค์ประกอบออกจากจุดสิ้นสุดของเวกเตอร์

อินท์เวคเตอร์pop_back();

//พิมพ์องค์ประกอบสุดท้ายตามขนาดของเวกเตอร์หลังจากลบ

ระยะเวลา=อินท์เวคเตอร์ขนาด();

ค่าใช้จ่าย << 'ขนาดปัจจุบันของเวกเตอร์:' <<ระยะเวลา<< 'NS';

ค่าใช้จ่าย << 'ค่าสุดท้ายของเวกเตอร์หลังจากลบ:' <<intVector[ระยะเวลา] << 'NS';

กลับ 0;

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ดด้านบน ผลลัพธ์แสดงให้เห็นว่าขนาดของเวกเตอร์ลดลง 1 แต่องค์ประกอบของตำแหน่งสุดท้ายของเวกเตอร์ดั้งเดิมยังคงอยู่

บทสรุป:

มีการอธิบายการใช้งานฟังก์ชัน pop_back() ที่แตกต่างกันสามแบบในบทช่วยสอนนี้โดยใช้ตัวอย่างง่ายๆ จุดประสงค์หลักของการใช้ฟังก์ชันนี้จะชัดเจนสำหรับผู้อ่านหลังจากฝึกตัวอย่างของบทช่วยสอนนี้