我有以下主程序创建一个Stack对象,用双打填充它然后弹出它们.代码文件很好,但该pop_back()部分似乎不起作用,而s.back()确实返回正确的值.这怎么可能?
#include "Stack.h"
#include <iostream>
#include <deque>
using namespace std;
int main() {
Stack<double> s(0,0.0);
// Write doubles into Stack
int i ;
for (i=0 ; i<15 ; i++) {
s.push(i*i) ;
}
// Read doubles back from fifo
while (!s.empty()) {
double val = s.pop() ;
std::cout << "Popping value " << val << " from stack" << std::endl ;
}
return 0 ;
}
Run Code Online (Sandbox Code Playgroud)
我的头文件看起来像这样,我省略了与问题无关的部分.
#ifndef STACK_H
#define STACK_H
#include <iostream>
#include …Run Code Online (Sandbox Code Playgroud)