vector容器用法

vector是一个容器,能够存放各种类型的对象。

一、定义与初始化

vector< T> c2;     // 创建一个空的vector
vector< T> c(n)    // 创建一个vector,含有n个数据,数据均已缺省构造产生
vector< T> c(n, elem)    // 创建一个含有n个elem拷贝的vector

二、析构函数

c.~vector ()   // 销毁所有数据,释放内存
c.clear();     // 移除容器中所有数据。

三、成员函数

1. 赋值与swap

c1 = c2
c1 = {a, b, c...}
a.swap(b)    //交换a和b元素
swap(a, b)    //交换a和b元素

2. 大小和判空

c.size()    //c中元素数目
c.max_size()    //c可保存的最大元素数目
c.empty()    //为空则返回true,否则返回false

3. 获取迭代器

vector<int>::iterator b;	//定义一个迭代器
c.begin()		//传回迭代器中的第一个数据地址
c.end()		    //只想迭代器中末端元素的下一个,指向一个不存在的元素
vector<int>::reserse_iterator c;		//定义一个反向迭代器
c.rbegin()		//传回一个逆向队列的第一个数据
c.rend()		//传回一个逆向队列的最后一个数据的下一个位置

4. vector的操作

c.push_back(elem)		//在末尾开辟新空间,并插入元素elem
c.insert(pos, elem)		//在pos位置插入elem
c.insert(pos, n, elem)		//在pos位置插入n个elem数据
c.clear()		//移除容器中所有的数据
c.erase(pos)		//删除pos位置的数据,传回下一个数据的位置
c.erase(beg, end)	//删除[beg, end)区间的数据,传回下一个数据的位置
c.pop_back()		//删除最后一个数据

5. 排序

// 升序:
sort(data.begin(),data.end())		//然后正序输出
// 降序
sort(data.rbegin(),data.rend())		//然后正序输出
sort(data.begin(),data.end())
reverse(data.begin(),data.end())
sort(data.rbegin(),data.rend())		//然后逆序序输出
posted @   mi4444ta  阅读(71)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示