容器定义:
在C++ 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对象的对象。与数组类似,可以和数组一样进行数据访问:vector c[];
下面利用几个基本函数实现vector的应用:
push_back( )在尾部加一个数据
pop_back( )删除最后一个数据
max_size( )容器中最大数据量
size( )容器中实际数据个数
resize( )重新指定数据个数
clear( )清除容器中数据
at( )访问数据,可以进行边界检查,也可以按数组的方式访问,但易出错
#include <iostream>
#include <vector> //包含文件
using namespace std;
int main()
{
vector<double> vec1(3);//定义一个vector
vec1[0] = 2.1;
vec1[1] = 3.5;
vec1[2] = 1.3; //与数组相似;
cout << "容器vec1最大数据量:" << vec1.max_size() << endl;
cout << "容器vec1实际存储数据:" << vec1.size() << endl;//size 可用capacity替代
vec1.push_back(4.5);
vector<double> vec2 = vec1;
vec2.resize(10);//重新设置容器大小
cout << "容器vec2最大数据量:" << vec2.max_size() << endl;
cout << "容器vec2实际存储数据:" << vec2.size() << endl;
vec2.pop_back();
vec2.pop_back();
vector<double> vec3 = vec2;
cout << "容器vec3最大数据量:" << vec3.max_size() << endl;
cout << "容器vec3实际存储数据:" << vec3.size() << endl;
vec3.clear();
cout << "容器vec3clear最大数据量:" << vec3.max_size() << endl;
cout << "容器vec3clear实际存储数据:" << vec3.size() << endl;
double a = vec1.at(2); //获取数据方式
double b = vec1[2]; //a=b
cout << "The third value of vec1 is:" << a << "/" << b << endl;
}