list::resize()
,看下例子就理解了,重新设置容器尺寸,如果想要的长度比原长度小,那么截处后面的元素,如果要比原尺寸大,那就后面补默认值。string的话就是空字符串,bool的话就是false:
#include<iostream>
#include<list>
int main(){
// Creating a list
std::list<int> _list;
// Adding elements to the list
_list.push_back(23);
_list.push_back(29);
_list.push_back(36);
_list.push_back(69);
_list.push_back(84);
// Initial list:
std::cout << "Initial List: ";
for (auto itr = _list.begin(); itr != _list.end(); itr++)
std::cout << *itr << " ";
// Resize list to contain less elements
_list.resize(4);
std::cout << "\n\nList after first resize: ";
for (auto itr = _list.begin(); itr != _list.end(); itr++)
std::cout << *itr << " ";
_list.resize(2);
std::cout << "\n\nList after second resize: ";
for (auto itr = _list.begin(); itr != _list.end(); itr++)
std::cout << *itr << " ";
// Resize list to contain more elements
_list.resize(4);
std::cout << "\n\nList after third resize: ";
for (auto itr = _list.begin(); itr != _list.end(); itr++)
std::cout << *itr << " ";
_list.resize(7);
std::cout << "\n\nList after fourth resize: ";
for (auto itr = _list.begin(); itr != _list.end(); itr++)
std::cout << *itr << " ";
return 0;
}
输出:
Initial List: 23 29 36 69 84
List after first resize: 23 29 36 69
List after second resize: 23 29
List after third resize: 23 29 0 0
List after fourth resize: 23 29 0 0 0 0 0