C++ Vector 序列容器 之 使用vector和迭代器
来源:互联网 发布:网络的词语 编辑:程序博客网 时间:2024/06/14 18:16
类模版vector提供的数据结构具有随机访问连续的内存位置。这样可以通过下标运算符[]高效直接访问vector中的任何一个元素。就像C、C++中原始数组那样。当容器中的数据必须方便的根据下标访问或者需要排序。最长使用的是类模版vector。当vector的内存耗尽,会分配一块更大的内存,将原来的数据复制到新的内存并销毁旧的内存。
提示:选择vector容器可以实现最佳的随机访问性能。
#include <iostream>using namespace std;#include <vector>using std::vector;//为了用类模版vector,必须包含这个头文件template<typename T> void printvector(const vector<T> &integers2);int main(){ const int size=6; int arry[size]={1,2,3,4,5,6}; vector<int> intergers; cout<<"The initial size of intergers is: "<<intergers.size() <<"\nThe inttial capacity of intial is: "<<intergers.capacity(); intergers.push_back(2); intergers.push_back(3); intergers.push_back(4); cout<<"\nThe size of intergers is "<<intergers.size() <<"\nthe capacity of intergers is "<<intergers.capacity(); //上面演示了vector 的size和capacity函数的用法. //capacity返回vector在动态改变大小以容纳更多元素之前能保存的元素数量 cout<<"\nOutput intergers:"; for (int *ptr=arry;ptr!=arry+size;ptr++)//arry+size 指向6 { cout<<*ptr<<' '; } cout<<endl; for (int i=0;i<=size;i++)//这个结果看截图,我想可能是C++专门让最后一个元素和下一个位置元素相等。 { cout<<" "<<*(arry+i); } cout<<endl; cout<<"\nOUTput vector using interator notion:"; printvector(intergers); cout<<"\nReversed contents of vector intergers:"; vector<int>::reverse_iterator re;//这里声明一个reverse_iterator,可用于逆向迭代vector。 //和begin和end一样.rbegin和rend函数根据容器是否为常量返回一个const_reverse_iterator或reverse_iterator vector<int>::reverse_iterator temiterator=intergers.rend(); for (re=intergers.rbegin();re!=temiterator;++re) { cout<<*re<<' '; } cout<<endl; return 0;}template<typename T>void printvector(const vector<T> &integers2){ typename vector<T>::const_iterator ci; for(ci=integers2.begin(); ci!=integers2.end();ci++) cout<<*ci<<' '; }
- C++ Vector 序列容器 之 使用vector和迭代器
- STL 序列容器之vector
- STL序列容器之vector
- C++STL之vector容器
- 容器vector和迭代器iterator+使用
- STL中序列容器之Vector
- C++ 序列式容器之vector
- stl之序列容器——vector
- STL序列式容器之vector
- Chapter 4: 序列式容器之 vector
- 详解序列式容器之vector
- 序列容器(vector)
- 序列式容器----vector
- 序列式容器:vector
- 序列式容器 vector
- 序列式容器-vector
- 序列式容器vector和deque
- 基本序列容器:vector、list和deque
- STL 堆操作 .
- C++类的直接初始化和复制初始化举例
- C语言 常量与变量
- sql初学习中常见的失误
- html
- C++ Vector 序列容器 之 使用vector和迭代器
- EFM32TG222F32连接JLink V8问题
- AXSceneControl汽车沿着pollyline行驶
- C语言数组与指针
- Delphi中WebBrowser控件打开Flash网站报“Invalid floating point operation”
- Latex CJK,tex使用中文
- MFC中ADO数据库基本sql语句应用
- Oracle RAC 备份和恢复OCR(10g)
- android之NDK