1 vector<vector<int>> v(5); 2 for (auto it = v.begin(); it != v.end(); it++) 3 { 4 static int num = 0; 5 (*it).reserve(5);//预留空间为5,但此时vector<int>的元素数量为0,下面这段jt=end() 6 /* for (auto jt = (*it).begin(); jt != (*it).end(); jt++,num++) 7 { 8 *jt = num; 9 }*/ 10 for (int j = 0; j < (*it).capacity(); j++, num++) 11 (*it).push_back(num); 12 } 13 for (auto it = v.begin(); it != v.end(); it++) 14 { 15 16 for (auto jt = (*it).begin(); jt != (*it).end(); jt++) 17 { 18 cout << *jt << " "; 19 } 20 } 21 for (int i = 0; i < v.size(); i++) 22 { 23 for (int j = 0; j < v[0].size(); j++) 24 { 25 cout << v[i][j] << " "; 26 } 27 }
创建了一个5*5的二维数组,如果需要还可以扩容;行1声明了含有5个vector<int>的元素,每个元素已经用改类型的默认初始化方式初始化了,vector<int>的默认初始化为一个空vector; cout << v[0].size() << " " << v[0].capacity() << endl;