【发布时间】:2019-09-12 22:47:30
【问题描述】:
我正在尝试获取堆栈中低于顶部值的值并使用 pop() 将其返回。有谁知道我该怎么做?
这是我到目前为止所拥有的......(我害怕不多)
template <typename T> //Pop second from the top method
void programStack<T>::popSecondFromTop() {
}
【问题讨论】:
-
你没有。这就是堆栈的意义所在。你能做的最好的就是记录顶部,弹出堆栈,弹出堆栈,将存储的值推回。如果您发现自己必须这样做,堆栈可能不是适合这项工作的数据结构。
-
也就是说,感觉您可能正在为an X-Y problem 苦苦挣扎。如果您概述了您尝试解决的导致您需要此功能的问题,那么有人可能会针对潜在问题提出更好的解决方案。
-
你可以简单的存储值,弹出顶部,存储第二个值,再次弹出,将第一个值压入堆栈,然后返回
-
programStack的标题是什么?这将有助于我们回答您。
标签: c++ visual-studio methods