ฟังก์ชันปรับขนาดเวกเตอร์ () ใน C ++

Vector Resize Function C



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

ไวยากรณ์:

ฟังก์ชัน resize() สามารถใช้ได้หลายวิธี สองไวยากรณ์ของฟังก์ชันนี้ได้รับด้านล่าง







โมฆะปรับขนาด(size_type n)

หากค่าของ n น้อยกว่าขนาดดั้งเดิมของวัตถุเวกเตอร์ ขนาดของเวกเตอร์จะลดลง หากค่าของ n มากกว่าขนาดดั้งเดิมของเวกเตอร์ ขนาดของเวกเตอร์จะเพิ่มขึ้น หากค่าของ n เท่ากับขนาดดั้งเดิมของเวกเตอร์ ขนาดเวกเตอร์จะยังคงไม่เปลี่ยนแปลง



โมฆะปรับขนาด(size_type n,constvalue_type&ค่า);

หากใช้อาร์กิวเมนต์ที่สองในฟังก์ชันนี้ ค่าของอาร์กิวเมนต์จะถูกเพิ่มที่ส่วนท้ายของเวกเตอร์



ฟังก์ชัน resize() ทั้งสองฟังก์ชันไม่ส่งคืนอะไรเลย





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

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

ตัวอย่างที่ 1: ลดขนาดของเวกเตอร์

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



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

#รวม

#รวม

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

intหลัก()

{

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

เวกเตอร์<สตริง>อาหาร= {'เค้ก','ขนมอบ','พิซซ่า','เบอร์เกอร์'};

ค่าใช้จ่าย << 'ขนาดปัจจุบันของเวกเตอร์: ' <<อาหาร.ขนาด() <<endl;

//เพิ่มสามองค์ประกอบ

อาหาร.push_back('พาสต้า');

อาหาร.push_back('มันฝรั่งทอด');

อาหาร.push_back('ไก่ทอด');

ค่าใช้จ่าย << 'ขนาดปัจจุบันของเวกเตอร์หลังการแทรก: ' <<อาหาร.ขนาด() <<endl;

//ปรับขนาดเวกเตอร์

อาหาร.ปรับขนาด(5);

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

กลับ 0;

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ดด้านบน ผลลัพธ์แสดงว่าขนาดดั้งเดิมของเวกเตอร์คือ 4 ขนาดกลายเป็น 7 หลังจากใส่ค่าใหม่ 3 ค่า และขนาดกลายเป็น 5 หลังจากใช้ฟังก์ชัน resize()

ตัวอย่างที่ 2: เพิ่มขนาดของเวกเตอร์

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

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

#รวม

#รวม

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

intหลัก()

{

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

เวกเตอร์<int>ตัวเลข= {10,90,ยี่สิบ,80,30 };

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

//ปรับขนาดเวกเตอร์

ตัวเลขปรับขนาด(8);

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

//เพิ่มตัวเลข 5 ตัวลงในเวกเตอร์

ตัวเลขpush_back(60);

ตัวเลขpush_back(40);

ตัวเลขpush_back(ห้าสิบ);

ตัวเลขpush_back(70);

ตัวเลขpush_back(100);

ค่าใช้จ่าย << 'ขนาดปัจจุบันของเวกเตอร์หลังการแทรก: ' <<ตัวเลขขนาด() <<endl;

กลับ 0;

}

เอาท์พุท:

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

ตัวอย่างที่ 3: ปรับขนาดเวกเตอร์ด้วยค่า

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

// การปรับขนาดเวกเตอร์

#รวม

#รวม

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

intหลัก()

{

//ประกาศเวกเตอร์ของค่าทศนิยม

เวกเตอร์<ลอย>ตัวเลข= { 7.89,3.98,5.56,9.65,2.33 };

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

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

สำหรับ(intผม= 0;ผม<ตัวเลขขนาด(); ++ผม)

ค่าใช้จ่าย <<ตัวเลข[ผม] << '';

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

//ปรับขนาดเวกเตอร์ด้วยค่า

ตัวเลขปรับขนาด(7,5.55);

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

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

สำหรับ(intผม= 0;ผม<ตัวเลขขนาด(); ++ผม)

ค่าใช้จ่าย <<ตัวเลข[ผม] << '';

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

กลับ 0;

}

เอาท์พุท:

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

บทสรุป:

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