App下載

C++ vector:使用動態(tài)數(shù)組管理數(shù)據(jù)

一級內(nèi)心戲表演藝術(shù)家 2023-06-12 11:12:36 瀏覽數(shù) (1221)
反饋

在 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. 訪問元素

我們可以使用 ?[]? 運(yùn)算符或 ?at()? 方法來訪問 ?vector? 中的元素:

std::vector<int> v{1, 2, 3};
int a = v[0]; // a = 1 int b = v.at(1); // b = 2

需要注意的是,如果使用 ?[]? 運(yùn)算符訪問越界的元素,程序?qū)罎?。??at()? 方法會拋出 ?out_of_range? 異常。

   4. 修改元素

我們可以直接使用 ?[]? 運(yùn)算符或 ?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++!


C++

0 人點贊