#include "stdafx.h" #include<algorithm> #include<iterator> #include<vector> #include <iostream> #include<functional> using namespace std; int main() { ostream_iterator<int> output(cout, " "); int ia[18] = { 47,29,5,37,13,23,11,61,7,31,41,2,59,19,17,53,43,3 }; vector<int> vec(ia, ia + 19); vector<int> vec2(18); if (vec.empty()) { cout << "vector空" << endl; } else { cout << "vector不空," << "vector中的元素: " << endl; unique_copy(vec.begin(), vec.end(), output); cout << endl; } cout << "当前分配元素空间数量: " << vec.capacity() << endl; vec.reserve(12); cout << "当前为vector保留的最小分配元素空间数量:" << vec.capacity() << endl; vec.erase(vec.begin(), vec.end()); cout << "当前分配元素空间数量:" << vec.capacity() << endl; vec.resize(10); cout << "当前重新分配元素空间数量为10,实际分配元素空间数量:" << vec.capacity() << endl; vec.assign(ia + 10, ia + 16); cout << "vector存放序列容许最大长度:" << vec.max_size() << endl; cout << "vector中的元素:" << endl; unique_copy(vec.begin(), vec.end(), output); cout << endl; vec.assign(ia, ia + 18); cout << "vector中的元素:" << endl; unique_copy(vec.begin(), vec.end(), output); cout << endl; sort(vec.begin(), vec.end(), greater<int>()); cout << "vector中的元素:" << endl; unique_copy(vec.begin(), vec.end(), output); cout << endl; cout << "用逆向迭代器输出vector中的元素:" << endl; unique_copy(vec.rbegin(), vec.rend(), output); cout << endl; cout << "第一个元素:" << vec.front() << endl; cout << "最后一个元素:" << vec.back() << endl; cout << "第七个元素:" << vec[6] << endl; cout << "元原vector2中的元素:" << endl; unique_copy(vec2.begin(), vec2.end(), output); cout << endl; vec2.swap(vec); cout << "交换后vector2中的元素:" << endl; unique_copy(vec2.begin(), vec2.end(), output); cout << endl; system("pause."); return 0; }
编程测试顺序容器矢量(vector)的主要功能和使用方法
猜你喜欢
转载自blog.csdn.net/levones/article/details/75213015
今日推荐
周排行