Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฟังก์ชัน vector insert() ใน C++ STL

ฟังก์ชัน vector::insert() ใน C++ STL ช่วยเพิ่มขนาด Container โดยแทรกสมาชิกใหม่ก่อนสมาชิกที่ตำแหน่งที่ระบุ เป็นฟังก์ชันสำเร็จรูปใน STL

สามารถแทรกค่าได้ 3 รูปแบบ:

  1. ระบุตำแหน่งและค่า: vector_name.insert(pos, value);
  2. ระบุตำแหน่ง จำนวน และค่า: vector_name.insert(pos, size, value);
  3. แทรกจาก Vector อื่นด้วย Iterator: empty_vector.insert(pos, iterator1, iterator2);

อัลกอริทึม

Begin
    Declare vector v with values
    Declare empty vector v1
    Declare iterator iter
    Insert value in v before beginning
    Insert another value with size before beginning
    Print v elements
    Insert all v values into v1 using iterators
    Print v1 elements
End.

ตัวอย่าง

#include <iostream>
#include <bits/stdc++.h>
using namespace std;

int main() {
    vector<int> v = {50,60,70,80,90}, v1;
    vector<int>::iterator iter;
    iter = v.insert(v.begin(), 40); // insert at beginning
    iter = v.insert(v.begin(), 1, 30); // insert with count
    cout << "The vector1 elements are: \n";
    for (iter = v.begin(); iter != v.end(); ++iter) cout << *iter << " " << endl;
    v1.insert(v1.begin(), v.begin(), v.end()); // copy all
    cout << "The vector2 elements are: \n";
    for (iter = v1.begin(); iter != v1.end(); ++iter) cout << *iter << " " << endl;
    return 0;
}

ผลลัพธ์

The vector1 elements are: 30 40 50 60 70 80 90
The vector2 elements are: 30 40 50 60 70 80 90