ฟังก์ชัน Vector Push_Back() ใน C++

Fangkchan Vector Push Back Ni C



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

ไวยากรณ์:

เวกเตอร์ :: ผลักดัน_กลับ ( value_typen ) ;

ค่าของ n จะถูกแทรกที่ส่วนท้ายของเวกเตอร์ หากประเภทข้อมูลของเวกเตอร์รองรับประเภทข้อมูลของ n มันกลับไม่มีอะไร







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

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



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

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



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

#รวม

#รวม <เวกเตอร์>

โดยใช้ เนมสเปซ มาตรฐาน ;

ภายใน หลัก ( )

{

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

เวกเตอร์ < เชือก > นก = { 'นกแก้วสีเทา' , 'นกพิราบเพชร' , 'ค็อกเทล' } ;

ศาล << “ค่าของเวกเตอร์ก่อนแทรก: \n ' ;

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

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < นก ขนาด ( ) ; ++ ฉัน )

ศาล << นก [ ฉัน ] << ' ' ;

ศาล << ' \n ' ;

/*

เพิ่มค่าสามค่าที่ส่วนท้ายของเวกเตอร์

ใช้ฟังก์ชัน push_back()

*/


นก ผลักดัน_กลับ ( เมน่า ) ;

นก ผลักดัน_กลับ ( 'บัดดี้ส์' ) ;

นก ผลักดัน_กลับ ( 'นกกระตั้ว' ) ;

ศาล << “ค่าของเวกเตอร์หลังการแทรก: \n ' ;

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

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < นก ขนาด ( ) ; ++ ฉัน )

ศาล << นก [ ฉัน ] << ' ' ;

ศาล << ' \n ' ;

กลับ 0 ;

}

เอาท์พุท:

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





ตัวอย่างที่ 2: แทรกค่าลงในเวกเตอร์โดยการป้อนข้อมูล

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

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

#รวม

#รวม <เวกเตอร์>

โดยใช้ เนมสเปซ มาตรฐาน ;

ภายใน หลัก ( )

{

//ประกาศเวกเตอร์จำนวนเต็ม

เวกเตอร์ < ภายใน > intVector ;

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

ภายใน ตัวเลข ;

ศาล << 'กรอก 5 หมายเลข: \n ' ;

/*

วนซ้ำ 5 ครั้งเพื่อแทรกค่าจำนวนเต็ม 5 ค่า

ลงในเวกเตอร์โดยใช้ฟังก์ชัน push_back()

*/


สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < 5 ; ฉัน ++ ) {

การกิน >> ตัวเลข ;

intVector. ผลักดัน_กลับ ( ตัวเลข ) ;

}

ศาล << “ค่าของเวกเตอร์หลังการแทรก: \n ' ;

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

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < intVector. ขนาด ( ) ; ++ ฉัน )

ศาล << intVector [ ฉัน ] << ' ' ;

ศาล << ' \n ' ;

กลับ 0 ;

}

เอาท์พุท:

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



ตัวอย่างที่ 3: แทรกค่าลงในเวกเตอร์ตามเงื่อนไขเฉพาะ

สร้างไฟล์ C++ ด้วยโค้ดต่อไปนี้เพื่อแทรกตัวเลขเฉพาะจากอาร์เรย์จำนวนเต็มลงในเวกเตอร์ว่าง มีการประกาศเวกเตอร์ว่างและอาร์เรย์จำนวนเต็ม 10 ตัวในโค้ด มีการใช้ลูป 'for' เพื่อวนซ้ำแต่ละค่าของอาร์เรย์และแทรกตัวเลขลงในเวกเตอร์โดยใช้ฟังก์ชัน push_back() หากตัวเลขน้อยกว่า 30 หรือมากกว่า 60 เนื้อหาของเวกเตอร์จะถูกพิมพ์โดยใช้ ฟังก์ชัน display_vector() หลังจากการแทรก

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

#รวม

#รวม <เวกเตอร์>

โดยใช้ เนมสเปซ มาตรฐาน ;

//แสดงเวกเตอร์

เป็นโมฆะ display_vector ( เวกเตอร์ < ภายใน > ตัวเลข )

{

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

สำหรับ ( อัตโนมัติ เขา = ตัวเลข เริ่ม ( ) ; เขา ! = ตัวเลข จบ ( ) ; เขา ++ )

ศาล << * เขา << ' ' ;

//เพิ่มบรรทัดใหม่

ศาล << ' \n ' ;

}

ภายใน หลัก ( )

{

//ประกาศเวกเตอร์จำนวนเต็ม

เวกเตอร์ < ภายใน > intVector ;

//ประกาศอาร์เรย์ของตัวเลข

ภายใน myArray [ 10 ] = { 9 , สี่ห้า , 13 , 19 , 30 , 82 , 71 , ห้าสิบ , 35 , 42 } ;

/*

วนซ้ำเพื่ออ่านแต่ละองค์ประกอบของอาร์เรย์

และแทรกค่าเหล่านั้นลงในเวกเตอร์

ซึ่งน้อยกว่า 30 และมากกว่า 60

ใช้ฟังก์ชัน push_back()

*/


สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < 10 ; ฉัน ++ ) {

ถ้า ( myArray [ ฉัน ] < 30 || myArray [ ฉัน ] > 60 )

intVector. ผลักดัน_กลับ ( myArray [ ฉัน ] ) ;

}

ศาล << 'ค่าของเวกเตอร์หลังจากการแทรก: ' << สิ้นสุด ;

display_vector ( intVector ) ;

กลับ 0 ;

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ดด้านบน ผลลัพธ์แสดงให้เห็นว่ามีการแทรกตัวเลข 9, 13, 19, 82 และ 71 ลงในเวกเตอร์แล้ว

บทสรุป:

มีฟังก์ชันมากมายใน C++ เพื่อแทรกข้อมูลที่จุดเริ่มต้นหรือจุดสิ้นสุดหรือตำแหน่งใดๆ ของเวกเตอร์ เช่น push_front(), insert() ฯลฯ การใช้ฟังก์ชัน push_back() จะถูกล้างหลังจากฝึกตัวอย่างที่แสดงในบทช่วยสอนนี้ .