vector中的各种函数演示
1.初始化演示
2.push_back()演示
3.insert()演示
4.pop_back()演示
5.erase()演示
6.size()演示
7.empty()演示
8.assign()演示
#include<iostream>
#include<vector>
using namespace std;
typedef vector<int> vint;
int main()
{
cout<<"初始化对象:"<<endl;
vint vec1; ///vec1对象初始为空
vint vec2(10, 6); ///vec2对象最初有10个值为6的元素
vint vec3(vec2.begin(), vec2.begin()+3);
///vec3对象最初有3个值为6的元素,拷贝构造
vint::iterator i; ///声明一个名为i的双向迭代器
cout<<"vec1.begin() --> vec1.end():"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
cout<<"vec2.begin() --> vec2.end():"<<endl;
for(i=vec2.begin(); i!=vec2.end(); ++i)
cout<<*i<<"";
cout<<endl;
cout<<"vec3.begin() --> vec3.end():"<<endl;
for(i=vec3.begin(); i!=vec3.end(); ++i)
cout<<*i<<"";
cout<<endl;
///测试添加和插入成员函数,vector不支持从前插入///
cout<<"测试添加和插入成员函数,vector不支持从前插入:"<<endl;
vec1.push_back(2); ///从后面添加一个成员
vec1.push_back(4);
cout<<"After push_back() now the vec1 is:"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
vec1.insert(vec1.begin()+1, 5); ///在vec1第一个的位置上插入成员5
cout<<"After push_back() and insert() now the vec1 is:"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
vec1.insert(vec1.begin()+1, vec3.begin(), vec3.end());
///从vec1第一的位置开始插入vec3的所有成员
cout<<"After push_back() and insert() now the vec1 is:"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
cout<<"vec1.front()="<<vec1.front()<<endl; ///vec1第零个成员
cout<<"vec1.back()="<<vec1.back()<<endl; ///vec1的最后一个成员
cout<<"vec1.at(4)="<<vec1.at(4)<<endl; ///vec1的第五个成员
cout<<"vec1[4]="<<vec1[4]<<endl;
///测试移出和删除///
vec1.pop_back(); ///将最后一个成员移出vec1
cout<<"After pop_back() now vec1 is:"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
vec1.erase(vec1.begin()+1, vec1.end()-2); ///删除成员
cout<<"After vec1.pop_back() and vec1.erase():"<<endl;
for(i=vec1.begin(); i!=vec1.end(); ++i)
cout<<*i<<"";
cout<<endl;
///显示序列的状态信息///
cout<<"vec1.size()="<<vec1.size()<<endl; ///打印成员个数
cout<<"vec1.empty()="<<vec1.empty()<<endl; ///清空
///测试赋值成员函数///
vec2.assign(8,1); /// 重新给vec2赋值,8个成员的初始值都为1
cout<<"vec2.assign(8,1):"<<endl;
for(i=vec2.begin(); i!=vec2.end(); ++i)
cout<<*i<<"";
cout<<endl;
}
posted on 2011-11-23 10:24 More study needed. 阅读(249) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架