cb11a_c++_顺序容器的操作4_容器大小操作_resize-max_size
cb11a_c++_顺序容器的操作4 2 容器大小的操作 3 c.size() 容器当前的个数 4 c.max_size(),容器最大存储量 5 c.empty() 是否为空 6 c.resize(n) //调整存储数据的大小至n 7 c.resize(n,t) //多一个参数t,将所有新添加的元素初始化为t。 8 9 注意:resize操作可能会使迭代器失效
1 /*cb11a_c++_顺序容器的的操作4 2 容器大小的操作 3 c.size() 容器当前的个数 4 c.max_size(),容器最大存储量 5 c.empty() 是否为空 6 c.resize(n) //调整存储数据的大小至n 7 c.resize(n,t) //多一个参数t,将所有新添加的元素初始化为t。 8 9 注意:resize操作可能会使迭代器失效 10 */ 11 12 #include <iostream> 13 #include <vector> 14 #include <list> 15 #include <deque> 16 17 using namespace std; 18 19 int main() 20 { 21 list<int> ilist; 22 ilist.push_back(10); 23 ilist.push_back(20); 24 ilist.push_back(30); 25 26 cout << "ilist容器的个数:" << ilist.size() << endl; 27 28 list<int>::size_type count = ilist.size();//返回结果:size_type 29 cout << "ilist容器的个数:" << count << endl; 30 31 cout << "容器的max_size: " << ilist.max_size() << endl; 32 33 if (ilist.empty()) 34 { 35 cout << "ilist容器是空的" << endl; 36 } 37 else 38 cout << "ilist容器不是空的" << endl; 39 40 //调整存储的大小 41 ilist.resize(10);//前3个有数据,后面7个都是0 42 for (list<int>::iterator iter = ilist.begin(); 43 iter != ilist.end(); ++iter) 44 cout << *iter << endl; 45 ilist.resize(20, 6);//20个数后面的,后面10个数是6 46 cout << "调整容量为20后:" << endl; 47 for (list<int>::iterator iter = ilist.begin(); 48 iter != ilist.end(); ++iter) 49 cout << *iter << endl; 50 51 ilist.resize(2);//只存储2个数 52 cout << "调整容量为2后:" << endl; 53 for (list<int>::iterator iter = ilist.begin(); 54 iter != ilist.end(); ++iter) 55 cout << *iter << endl; 56 ilist.resize(0);//里面数据清空了,为0 57 cout << "调整容量为0后:" << endl; 58 for (list<int>::iterator iter = ilist.begin(); 59 iter != ilist.end(); ++iter) 60 cout << *iter << endl; 61 if (ilist.empty()) 62 { 63 cout << "ilist容器是空的" << endl; 64 } 65 else 66 cout << "ilist容器不是空的" << endl; 67 68 vector<int> ivec(10,42);//10个42 69 ivec.resize(15); 70 ivec.resize(25);//总共25个的大小 71 ivec.resize(5);//调整为只有5个数大小 72 ivec.resize(0);//清空,数据数量0 73 74 //c.resize(n,t) //多一个参数t,将所有新添加的元素初始化为t。 75 ivec.resize(3, 8);//3个数据,默认都是8,3个8. 76 77 cout << "vector数据显示:" << endl; 78 for (size_t iv = 0; iv != ivec.size(); ++iv) 79 cout << ivec[iv] << endl; 80 81 82 83 return 0; 84 }
欢迎讨论,相互学习。
cdtxw@foxmail.com