为什么C++中的内置堆栈接口没有clear()函数?

che*_*ies 2 c++ stack

在进一步使用它之前我必须清空堆栈。我确实明白可以这样做:

while (!mystack.empty()) { mystack.pop(); }

没有这个功能有什么具体原因吗?或者只是第一次制作时没有人感受到它的要求而被排除在外

另外,Java中的栈接口确实有一个clear()功能。

小智 6

虽然拥有一个显式的 可能会更具可读性.clear(),但即使没有它,您也可以像这样清空堆栈:

mystack = {};
Run Code Online (Sandbox Code Playgroud)