Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Vector hoạt động như thế nào trong C++?

Vector có khả năng tự thay đổi kích thước giống như mảng động khi một phần tử được chèn hoặc xóa, container tự động xử lý bộ nhớ của mình. Các phần tử vector được đặt trong bộ nhớ liên tục để có thể truy cập và duyệt qua bằng iterator. Dữ liệu có thể được chèn hoặc xóa ở đầu, giữa hoặc cuối của vector.

Đây là chương trình C++ triển khai các hàm khác nhau của vector.

Thuật toán

Bắt đầu
  Khai báo biến v kiểu vector.
  Khai báo biến it kiểu iterator của vector.
  Khai báo hai biến c và i kiểu integer.
  while (1) do
    In "1. Kích thước của Vector".
    In "2. Chèn phần tử vào Vector".
    In "3. Xóa phần tử cuối của Vector".
    In "4. Thay đổi kích thước vector".
    In "5. Dự trữ vector".
    In "6. Hiển thị dung lượng vector".
    In "7. Hiển thị bằng Iterator".
    In "8. Xóa Vector".
    In "9. Thoát".
    In "Nhập lựa chọn của bạn:".
    Nhập giá trị biến c.
    Switch(c)
      Case 1.
        In "Kích thước Vector:".
        Gọi hàm size() để in kích thước vector.
        Break.
      Case 2.
        In "Nhập giá trị cần chèn:".
        Nhập giá trị biến i.
        Gọi push_back() để nhập giá trị vào vector.
        Break.
      Case 3.
        In "Xóa phần tử cuối cùng chèn:".
        Gọi pop_back() để xóa giá trị trong vector.
        Break.
      Case 4.
        In "Thay đổi kích thước các phần tử vector:".
        Gọi resize() để thay đổi kích thước vector.
        Break.
      Case 5.
        In "Dự trữ các phần tử vector:".
        Gọi reserve() để dự trữ kích thước vector.
        Break.
      Case 6.
        In "Hiển thị dung lượng vector:".
        Gọi capacity() để hiển thị dung lượng vector.
        Break.
      Case 7.
        In "Hiển thị Vector bằng Iterator:".
        for (it = v.begin(); it != v.end(); it++)
          In giá trị của iterator it.
        Break.
      Case 8.
        Gọi clear() để xóa vector.
        In "Vector đã được xóa".
        break
      Case 9.
        Gọi exit() để thoát.
        break.
      Default.
        In "Lựa chọn sai".
Kết thúc.

Mã ví dụ

#include <iostream>
#include <vector>
using namespace std;

int main() {
    vector<int> v;
    vector<int>::iterator it;
    int c, i;
    while (1) {
        cout << "1.Kích thước của Vector" << endl;
        cout << "2.Chèn phần tử vào Vector" << endl;
        cout << "3.Xóa phần tử cuối của Vector" << endl;
        cout << "4.Thay đổi kích thước vector" << endl;
        cout << "5.Dự trữ vector" << endl;
        cout << "6.Hiển thị dung lượng vector" << endl;
        cout << "7.Hiển thị bằng Iterator" << endl;
        cout << "8.Xóa Vector" << endl;
        cout << "9.Thoát" << endl;
        cout << "Nhập lựa chọn của bạn: ";
        cin >> c;
        switch(c) {
            case 1:
                cout << "Kích thước Vector: ";
                cout << v.size() << endl;
                break;
            case 2:
                cout << "Nhập giá trị cần chèn: ";
                cin >> i;
                v.push_back(i);
                break;
            case 3:
                cout << "Xóa phần tử cuối cùng chèn:" << endl;
                v.pop_back();
                break;
            case 4:
                cout << "Thay đổi kích thước các phần tử vector:" << endl;
                v.resize(10);
                break;
            case 5:
                cout << "Dự trữ các phần tử vector:" << endl;
                v.reserve(100);
                break;
            case 6:
                cout << "Hiển thị dung lượng vector: ";
                cout << v.capacity() << endl;
                break;
            case 7:
                cout << "Hiển thị Vector bằng Iterator: ";
                for (it = v.begin(); it != v.end(); it++) {
                    cout << *it << " ";
                }
                cout << endl;
                break;
            case 8:
                v.clear();
                cout << "Vector đã được xóa" << endl;
                break;
            case 9:
                exit(1);
                break;
            default:
                cout << "Lựa chọn sai" << endl;
        }
    }
    return 0;
}

Kết quả

1.Kích thước của Vector 2.Chèn phần tử vào Vector 3.Xóa phần tử cuối của Vector 4.Thay đổi kích thước vector 5.Dự trữ vector 6.Hiển thị dung lượng vector 7.Hiển thị bằng Iterator 8.Xóa Vector 9.Thoát Nhập lựa chọn của bạn: 1 Kích thước Vector: 0 ...