C++官网参考链接:https://cplusplus.com/reference/list/list/clear/
公有成员函数
<list>
std::list::clear
C++98
void clear();
C++11
void clear() noexcept;
清除内容
从list容器中删除所有元素(已销毁),并将容器的size保留为0。
形参
没有形参。
返回值
没有返回值。
用例
// clearing lists
#include <iostream>
#include <list>
int main ()
{
std::list<int> mylist;
std::list<int>::iterator it;
mylist.push_back (100);
mylist.push_back (200);
mylist.push_back (300);
std::cout << "mylist contains:";
for (it=mylist.begin(); it!=mylist.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
mylist.clear();
mylist.push_back (1101);
mylist.push_back (2202);
std::cout << "mylist contains:";
for (it=mylist.begin(); it!=mylist.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
return 0;
}
输出:
复杂度
list::size(析构)中的线性。
iterator的有效性
与此容器相关的所有iterator、reference和指针都无效,结束iterator除外。
数据竞争
完成容器的修改。
所有包含的元素都被修改。
异常安全
无抛出保证:该成员函数从不抛出异常。