网站首页 > 资源文章 正文
`vector`(向量):`vector`是一种动态数组容器,可以在运行时根据需要调整大小。它提供了高效的随机访问和在末尾添加/删除元素的操作。
- 迭代器
vector维护的是一个连续线性空间,所以不论其元素类型为何,普通指针都可以作为vector的迭代器而满足所有必要条件,因为vector迭代器所需要的操作行为,如operator*,operator->,operator++,operator--,operator+,operator-,operator+=,operator-=,普通指针天生就具备。vector支持随机存取,而普通指针正有着这样的能力。所以,vector提供的是Random Access Iterators:
template <class T,class Alloc = alloc>
class vector{
public:
typedef T value_type;
typedef value_type* iterator; //vector的迭代器时普通指针
...
};
- 分配器
vector缺省使用alloc作为空间分配器,并据此另外定义了一个data_allocator,为的是更方便以元素大小为配置单位:
template<class T,class Alloc = alloc>
class vector{
protected:
typedef simple_alloc<value_type,Alloc> data_allocator;
...
};
因此,data_allocator::allocate(n)表示分配n个元素空间
- demo
#include <iostream>
#include <vector>
int main() {
// 创建一个整数类型的 vector
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 输出 vector 的大小
std::cout << "Vector size: " << numbers.size() << std::endl;
// 访问 vector 中的元素
std::cout << "First element: " << numbers[0] << std::endl;
// 修改 vector 中的元素
numbers[2] = 10;
std::cout << "Updated vector: ";
for (int num : numbers) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
猜你喜欢
- 2024-10-29 C++遍历vector元素的四种方式(c++ iterator遍历)
- 2024-10-29 c++vector常用操作及函数(c++ vector常用方法)
- 2024-10-29 Vector冲锋枪:极富科技感的未来军械
- 2024-10-29 绝地求生:汤姆逊或超越M4成玩家最爱?Vector居然加入空投了!
- 2024-10-29 绝地求生Vector(当对面掏出短剑的时候,你已经凉了)
- 2024-10-29 std::vector的用法,删除,添加,更新成员?
- 2024-10-29 C++ Vector类型及使用(c++vector详解)
- 2024-10-29 数据安排与操作方式:vector的扩容操作
- 2024-10-29 C++中的动态内存管理:深入探讨std::vector与指针
- 2024-10-29 vector的底层是如何实现的?#代码(vector的原理)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)