在 C++ 中,我們經(jīng)常需要處理一些不確定長度的數(shù)據(jù)集合。而 ?vector
? 是一個非常實用的容器類,它可以讓我們方便地管理動態(tài)數(shù)組,并提供了豐富的操作方法。
下面就來看看如何使用 ?vector
? 實現(xiàn)一些具體的功能。
1. 初始化 vector
我們可以通過以下方式來初始化一個 ?vector
?:
#include <vector>
std::vector<int> v; // 初始化一個空 vector
std::vector<int> v{1, 2, 3}; // 初始化一個包含 1、2、3 的 vector
2. 添加元素
我們可以使用 ?push_back()
? 方法向 ?vector
? 中添加元素:
std::vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
此時,v 中的元素為 {1, 2, 3}。
3. 訪問元素
我們可以使用 ?[]
? 運算符或 ?at()
? 方法來訪問 ?vector
? 中的元素:
std::vector<int> v{1, 2, 3};
int a = v[0]; // a = 1
int b = v.at(1); // b = 2
需要注意的是,如果使用 ?[]
? 運算符訪問越界的元素,程序?qū)罎ⅰ6??at()
? 方法會拋出 ?out_of_range
? 異常。
4. 修改元素
我們可以直接使用 ?[]
? 運算符或 ?at()
? 方法修改 ?vector
? 中的元素:
std::vector<int> v{1, 2, 3};
v[0] = 4; // v 現(xiàn)在為 {4, 2, 3}
v.at(1) = 5; // v 現(xiàn)在為 {4, 5, 3}
5. 刪除元素
我們可以使用 ?erase()
? 方法刪除 ?vector
? 中的元素:
std::vector<int> v{1, 2, 3};
v.erase(v.begin() + 1); // 刪除第二個元素,v 現(xiàn)在為 {1, 3}
需要注意的是,?erase()
? 方法會使后面的元素往前移動一個位置。
6. 清空 vector
我們可以使用 ?clear()
? 方法清空 ?vector
? 中的元素:
std::vector<int> v{1, 2, 3};
v.clear(); // v 現(xiàn)在為空
7. 獲取 vector 的大小
我們可以使用 ?size()
? 方法獲取 ?vector
? 中元素的個數(shù):
std::vector<int> v{1, 2, 3};
int size = v.size(); // size = 3
通過上述實例,我們可以看到 ?vector
? 提供了方便的方法來管理動態(tài)數(shù)組。它不僅可以保存基本類型,還可以保存對象、結(jié)構(gòu)體等復(fù)雜數(shù)據(jù)類型。因此,在 C++ 開發(fā)中,?vector
? 是一個非常常用的容器類。
如果您還是C++初學(xué)者,可以先來試試 C++入門課程 ,零基礎(chǔ)也能學(xué)習(xí)C++!