vector类
C++提供了一种
标准模板库(standard template library,STL),其中包含了大量的类以供程序员使用。vector类是STL类中的一种,它在一个线性列表中存储数据元素,加入到vector的数据按照先后顺序进行排列。同时vector允许程序员对其中的数据进行增加、访问、删除和清除操作。由于vector支持动态的增长和缩减,因此程序员在使用vector存储数据时可以不必担心存储空间的消耗(一定限度内)。
下表列出了vector类中定义的部分函数以及它们的用途:
函数名 用途
|
at(int) 给定整数int,返回vector中处于该位置的数据元素。
|
push_back() 将数据添加到vector末尾。
|
pop_back() 返回并删除处于vector末尾的数据。
|
bool_empty() 如果vector为空,则返回真;如果vector至少包含一个数据元素,则返回假。
|
clear() 删除vector中的所有数据。
|
int size() 返回vector包含的数据元素的数量。
|
要使用vector类必须在程序中包含vector库:
#include
在构造一个vector对象时,需要告诉vector它所保存的数据类型,如:vector
intNums;
下面的程序展示了如何构造一个包含整数的vector,如何通过push_back()函数为vector添加数据,如何通过size()函数和at()访问vector中的数据。
-
#include<iostream>
-
#include<vector>
-
#include<iomanip> //为了使用setw()函数
-
-
using namespace std;
-
-
int main()
-
{
-
vector<int> vNums; //包含整数的vector对象
-
-
cout <<"\n Demonstration of C++ Vector \n";
-
-
//通过函数push_back()将5个数据存入vector中
-
vNums.push_back(35);
-
vNums.push_back(99);
-
vNums.push_back(27);
-
vNums.push_back(3);
-
vNums.push_back(54);
-
-
//通过size()获得vector中的整数个数
-
cout << "The vector has " << vNums.size() << " numbers." << endl;
-
-
//在加入2个整数
-
vNums.push_back(15);
-
vNums.push_back(72);
-
-
cout << "Now the vector has " << vNums.size() << " numbers." << endl;
-
-
//通过at()函数获得vector中包含的整数个数
-
//第一个元素为at(0),第二个为at(1)
-
-
cout << "Here are the numbers in the vector." << endl;
-
for (int i = 0; i < vNums.size(); ++i)
-
{
-
cout << setw(5) << vNums.at(i);
-
}
-
cout << endl;
-
return 0;
-
-
}
输出的结果为:
-
Demonstration of C++ Vector
-
The vector has 5 numbers.
-
Now the vector has 7 numbers.
-
Here are the numbers in the vector.
-
35 99 27 3 54 15 72
阅读(1086) | 评论(0) | 转发(0) |