为什么std :: stack :: pop()如果堆栈为空并且没有任何内容可以抛出异常?
(我正在为自己的代码设计一个专用的堆栈,并想知道这种方法的权衡(需要人们手动检查堆栈是否为空)而不是抛出异常.
我的猜测是,虽然C++支持异常处理,但它带来了很小的运行时开销,因此,为了获得最大性能,决定不在std :: stack :: pop中抛出异常.
c++ stack stl exception
c++ ×1
exception ×1
stack ×1
stl ×1