您的位置:首页 > 其它

STL学习篇:vector的简单使用

2015-08-02 22:29 330 查看
  vector,一个动态数组!在堆中操作,元素连续存放,可以直接访问其中的任何元素,初始分配有内存,当保留内存不够的时候,会再分配内存!

  下面看一个vector的构造函数例子:

#include <iostream>
#include<vector>
#include<string>

int main()
{
using namespace std;

//类模板,模板参数
vector<int> ivec;//保存int数据类型的vector
vector<double> dvec;
vector<string> svec;

vector<int> a;//a是一个空的容器
vector<int> b(5, 4);//b是一个容器,里面有5个4

a.push_back(1);
a.push_back(2);
a.push_back(3);

b.push_back(10);
b.push_back(11);

cout << a.size() << endl;
cout << b.size() << endl;

//不用int类型的循环变量
//for(int i
for(vector<int>::size_type i = 0; i != a.size();++i)
{//size_type是容器概念,没有容器不能使用。
cout << a[i] << endl;
}

for(vector<int>::size_type i = 0; i != b.size(); ++i)
{
cout << b[i] << endl;
}
//vector<int>::iterator airt;
return 0;
}


vectorConstruct
  下面看一个vector输入输出例子:

#include<vector>
#include<iostream>
#include<string>

using namespace std;

int main()
{
vector<int> ivec;//空,没有数据
cout << ivec.size() << endl;

cout << "请输入五个数" << endl;
int k;
for (vector<int>::size_type ix = 0; ix != 5; ++ix)
{
//cin << ivec[ix];//初始如果没有下标,不可以这样操作
cin >> k;
ivec.push_back(k);
}

cout << "显示数据是:" << endl;
for (vector<int>::size_type ix = 0; ix != ivec.size(); ++ix)
{
cout << ivec[ix] << "\t";
}

cout << "请输入字符串" << endl;
string word;
vector<string> text;
while (cin >> word)
{
text.push_back(word);
}
for (vector<int>::size_type i = 0; i != text.size(); ++i)
{
cout << text[i] << endl;
}

return 0;
}


这就是vector的一些常用操作!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: