C++中stack的pop()函数返回值
int temp = s.pop();cout<<temp<<endl;运行代码会提示错误:error C2440: “初始化”: 无法从“void”转换为“int”【全部demo】#include <iostream>#include <stack>using namespace st
·
int temp = s.pop();
cout<<temp<<endl;
运行代码会提示错误:error C2440: “初始化”: 无法从“void”转换为“int”
【全部demo】
#include <iostream>
#include <stack>
using namespace std;
int main()
{
stack<int> s;
if(s.empty())
cout<<"empty"<<endl; //empty
s.push(1);
s.push(6);
s.push(66);
cout<<s.size()<<endl; //3
int temp = s.pop();
cout<<temp<<endl; //66
cout<<s.size()<<endl; //2
cout<<s.top()<<endl; //6
cout<<s.size()<<endl; //2
system("pause");
return 0;
}
【分析】:
C++中stack,其中有两个方法:
pop(), 返回void,
top(),返回栈顶的引用。
所以想要提取栈顶元素,直接用s.top()
更多推荐
所有评论(0)