C++的STL容器栈使用细节

今天解一道算法题,用到了C++ STL中的栈,debug时发现了只要当栈空时,这时执行到查询栈顶或者弹出栈顶元素时,程序会中断:

比如下面:

 当合并时,变成if(S.top()||S.empty() ){ ..  } 程序可能会中断,提前结束;

当然这么写 if( S.empty() || S.top() ){ ..  } 可能可以,但建议还是不要,容易出错

猜你喜欢

转载自www.cnblogs.com/debug-the-heart/p/12528827.html