App下載

如何在C++中使用動態(tài)數(shù)組?C++ vector介紹

伸手挽明月 2023-06-14 09:47:19 瀏覽數(shù) (1525)
反饋

C++ vector是一種動態(tài)數(shù)組,可以根據(jù)需要自動調(diào)整大小。vector的優(yōu)點是可以高效地訪問和修改元素,而不需要管理內(nèi)存分配。vector的缺點是插入和刪除元素可能會導致性能下降,因為需要移動其他元素或重新分配內(nèi)存。本文將介紹vector的基本用法和常見操作。

要使用vector,首先需要包含頭文件,然后聲明一個vector對象,指定其元素的類型。例如,要創(chuàng)建一個存儲整數(shù)的vector,可以這樣寫:

#include <vector>
std::vector<int> v;

這樣就創(chuàng)建了一個空的vector,沒有任何元素。要向vector中添加元素,可以使用push_back()方法,將元素追加到vector的末尾。例如,要向v中添加1, 2, 3, 可以這樣寫:

v.push_back(1);
v.push_back(2);
v.push_back(3);

這樣v就變成了{1, 2, 3}。要訪問vector中的元素,可以使用下標運算符[],指定元素的索引。索引從0開始,到size()-1結束。size()方法返回vector中的元素個數(shù)。例如,要打印v中的第一個和最后一個元素,可以這樣寫:

std::cout << v[0] << std::endl; // 輸出1
std::cout << v[v.size()-1] << std::endl; // 輸出3

要修改vector中的元素,也可以使用下標運算符[],給元素賦新值。例如,要將v中的第二個元素改為4,可以這樣寫:

v[1] = 4;

這樣v就變成了{1, 4, 3}。要刪除vector中的元素,可以使用pop_back()方法,將最后一個元素彈出并返回。例如,要刪除v中的最后一個元素,并打印它,可以這樣寫:

int x = v.pop_back();
std::cout << x << std::endl; // 輸出3

這樣v就變成了{1, 4}。要在vector中的任意位置插入或刪除元素,可以使用insert()和erase()方法,指定插入或刪除的位置。位置用迭代器表示,迭代器是一種指向容器中元素的指針。要獲取vector中某個位置的迭代器,可以使用begin()和end()方法,分別返回指向第一個和最后一個元素之后的迭代器。還可以使用加減法運算符對迭代器進行偏移。例如,要在v中的第二個位置插入5,并刪除第一個位置的元素,可以這樣寫:

v.insert(v.begin()+1, 5); // 在第二個位置插入5
v.erase(v.begin()); // 刪除第一個位置的元素

這樣v就變成了{5, 4}。除了上述操作外,vector還提供了一些其他方法和屬性,如clear()清空所有元素,empty()判斷是否為空,capacity()返回分配的內(nèi)存大小等。更多信息可以參考官方文檔或相關教程。

總之,C++ vector是一種方便而強大的容器類,可以用來存儲和操作任意類型的數(shù)據(jù)。通過掌握vector的基本用法和常見操作,可以提高編程效率和質(zhì)量。

C++相關課程推薦 C++相關課程

C++

0 人點贊