迭代器、静态数组array、动态数组vector,将静态数组中的随机数,翻倍存入动态数组中

    科技2022-08-31  112

    此实例主要是对迭代器、静态数组array、动态数组vector的简单应用

    main.cpp部分:

    #include <iostream> #include <array> // 静态数组 #include <vector> // 动态数组 #include <ctime> using namespace std; template <typename T> void show(T container) { // C语言: auto 是一个无用的关键字 // C++: auto 代表自动获取数据的类型 for(auto element : container) //1,使用枚举化for循环遍历容器 cout << element << '\t'; cout << endl; for(auto it=container.begin(); //2,使用迭代器遍历容器(正序) it != container.end(); it++) cout << *it << '\t'; cout << endl; for(auto it=container.rbegin(); //3,使用迭代器遍历容器(反序) it != container.rend(); it++) cout << *it << '\t'; cout << endl; } int main() { array<int, 10> a; //静态数组 srand(time(NULL)); //产生随机数 for(int i=0; i<a.size(); i++) a.operator [](i) = rand()%1000; show(a); cout << endl; vector<int> b; //动态数组 for(auto it=a.begin(); //遍历静态数组a it != a.end(); it++) b.push_back(2*(*it)); //将静态数组a的各个值乘2,存放到动态数组b里面 // for(int k : a) //遍历静态数组a // b.push_back(2*k); //将静态数组a的各个值乘2,存放到动态数组b里面 show(b); return 0; }

    运行结果:

    Processed: 0.008, SQL: 9