C++【vector】用法和例子

 1 /***
 2  * vector 基础api复习
 3  * 8 AUG 2018
 4  */
 5 
 6 #include <iostream>
 7 #include <vector>
 8 using namespace std;
 9 
10 // 打印vec向量
11 void print(vector<int> vec, int index)
12 {
13     std::cout << "vec" << index << " = ";
14     for (int i = 0; i < vec.size(); i++)
15     {
16         std::cout << vec[i];
17     }
18     std::cout << std::endl;
19 }
20 
21 int main()
22 {
23     // vector初始化
24     vector<int> vec0(10, 1);                             // 10个1
25     vector<int> vec1(vec0.begin(), vec0.begin() + 2);    // 将vec0的前两个值赋给vec1
26     vector<vector<int>> vec2(3, vector<int>(4));         // vec2二维向量,含有3个元素,每个元素含有4个int型vec向量
27 
28     print(vec0, 0);
29     print(vec1, 1);
30 
31     // vector基本操作
32     bool flag = vec0.empty();        // 判断vec0是否为空
33     std::cout << "flag = " << flag << std::endl;
34     vec1.clear();                    // 清空vec1
35     print(vec1, 1);
36 
37     // vector::insert()
38     vec0.insert(vec0.begin(), 2);                         // 将2插入到vec0最前面
39     print(vec0, 0); 
40     vec0.insert(vec0.begin(), 3, 5);                      // 将5插入到vec0的index值为0-2的每个位置,长度为3
41     print(vec0, 0);                                                                                
42     vec0.insert(vec0.begin(), vec1.begin(), vec1.end());  // 将vec1插入到vec0前面
43     print(vec0, 0);
44 
45     // vector::erase()
46     vec0.erase(vec0.begin(), vec0.begin() + 4);           // 将vec0的前4位删除
47     print(vec0, 0);
48 
49     // vector::swap()
50     vec0.swap(vec1);                 // 将vec0与vec1交换
51     print(vec1, 1);
52 
53     // vector<vector<int>>
54     vec0 = vec2[0];                  // 将vec2的第0个位置的向量给vec0,这里由于是初值,故为4个0 
55     print(vec0, 0);
56 
57     // vector::push_back() && vector::pop_back()
58     vec1.push_back(2);               // 在尾部加入一个2
59     print(vec1, 1);
60     vec1.pop_back();                 // 删除最后一个数据
61     print(vec1, 1);
62 
63     while (true)
64     {
65         getchar();
66     }
67     return 0;
68 }

 

posted @ 2018-08-08 18:28  糖醋麻辣虾  阅读(240)  评论(0编辑  收藏  举报