#include <iostream>
#include <vector>
using std::vector;
using std::string;
using std::cout;
using std::cin;
using std::endl;
int main()
{
/** 关于STL vector模板类的基本用法 **/
vector<int> test;
// test.empty()
if (!test.empty())
{
cout << test.size() << " elements in the vector" << endl;
}
else
{
cout << "The vector is empty" << endl;
}
// test.push_back()
// test.size()函数返回的并不是一个一般的整型或者无符号整型,它是一个特殊的无符号整型其能代表的取指范围大于等于普通无符号整型
for (int i = 0; i < 10; i++)
{
test.push_back(i);
}
cout << test.size() << " elements in the vector" << endl;
// test.pop_back()
for (int j = 0; j < 5; j++)
{
test.pop_back();
}
cout << test.size() << " elements in the vector" << endl;
for (int i = 0; i < 5; i++)
{
cout << test[i] << endl;
}
// test.begin(), test.end()分别代表指向容器首个元素的迭代器和指向容器最后一个元素的后继元素的迭代器
for (vector<int>::iterator iter = test.begin(); iter != test.end(); iter++)
{
cout << *iter << " ";
}
cout << endl;
// vector<int>::reverse_iterator对应的反向迭代器,其性质类似于容器从反方向进行元素的存储
for (vector<int>::reverse_iterator iter = test.rbegin(); iter != test.rend(); iter++)
{
cout << *iter << " ";
}
cout << endl;
// *iter,对迭代器进行解引用操作,可获得容器中的元素
// test[i]使用下标的方法来获得vector中的元素(只能获得已经存在的元素,对于不存在的元素会提示越界,而并不会去创建它)
for (int i = 0; i < 5; i++)
{
cout << test[i] << endl;
}
return 0;
}
C++中模板类vector常用示例
最新推荐文章于 2024-08-21 13:22:49 发布