vector容器中的取数组长度方法
时间: 2023-10-06 10:10:08 浏览: 116
vector容器的长度可以通过其成员函数`size()`来获取,例如:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> v = {1, 2, 3, 4, 5};
cout << "vector的长度为:" << v.size() << endl; // 输出:vector的长度为:5
return 0;
}
```
在上述代码中,`v.size()`返回的就是vector容器中元素的数量,即长度为5。
相关问题
vector容器动态数组
### C++ `vector` 容器作为动态数组的使用方法
#### 导入头文件
为了使用 `vector` 动态数组容器,程序中需要导入 `<vector>` 头文件[^1]。
```cpp
#include <iostream>
#include <vector>
using namespace std;
```
#### 创建 `vector` 对象
创建一个 `vector<int>` 类型的对象来存储整数类型的元素。可以通过多种方式初始化:
- 默认构造函数创建空向量:
```cpp
vector<int> vec;
```
- 初始化列表指定初始元素:
```cpp
vector<int> vec = {1, 2, 3};
```
- 使用迭代器范围构造函数从现有数组复制数据[^3]:
```cpp
int arr[] = {1, 2, 5, 6, 7};
vector<int> vec(begin(arr), end(arr));
```
#### 添加和访问元素
通过成员函数如 `push_back()` 向末尾添加新元素,并利用下标运算符 `[index]` 或者 `at(index)` 方法获取特定位置上的值。
```cpp
vec.push_back(8); // 添加新的元素到末尾
cout << vec[0]; // 访问第一个元素
cout << vec.at(4); // 访问第五个元素(安全检查)
```
#### 查询大小信息
可以调用 `size()` 获取当前已存元素数量,而 `capacity()` 返回分配的空间大小,即使这些空间尚未被占用[^4]。
```cpp
cout << "Size: " << vec.size(); // 当前使用的元素数目
cout << "Capacity: " << vec.capacity();// 已分配但可能未完全使用的总容量
```
#### 修改容量
当预计未来会增加更多项时可提前预留空间以提高性能效率;同样也可以让实际使用的内存更贴近需求减少浪费。
```cpp
vec.reserve(100); // 提前申请至少能容纳100个元素的空间
if (!vec.empty()) {
vec.shrink_to_fit(); // 尽量释放多余不用的内部缓冲区
}
```
#### 删除操作
移除最后一个元素或清空整个集合都很容易实现。
```cpp
if (!vec.empty())
{
vec.pop_back(); // 移除最后面的一项
}
vec.clear(); // 清理所有项目使长度变为零
```
vector数组长度
回答: 在使用vector构造二维数组时,可以通过以下方式来固定vector长度:vector<vector<int>> vec_arr(m, vector<int>(n)),其中m为行数,n为列数,表示一个m*n的二维数组。 = i + 1;
cout << arr[i << " ";
}
}
运行结果为:arr容器元素个数为:10。<em>1</em><em>2</em><em>3</em>
#### 引用[.reference_title]
- *1* *2* [固定长度的vector和queue用法介绍](https://blog.csdn.net/leigelaile1/article/details/77899125)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
- *3* [vector数组长度获取](https://blog.csdn.net/m0_45932164/article/details/120564534)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
[ .reference_list ]
阅读全文