如图,通过s.top()函数是可以直接修改栈堆最顶元素的值的。我们老师叫我们自己仿写一个栈,我写了一个,但是这个top()函数的功能却不懂怎么实现。如下图:错误提示是:error C2244: 'MyPittyStack<Type>::top' : unable to resolve function overload.
2 回答
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
#include <iostream> using namespace std; template < class Type> class MyPittyStack { int i; public : Type a[100]; bool push(Type n); Type &top(); MyPittyStack(); }; template < class Type> MyPittyStack<Type>::MyPittyStack() { i = 0; } template < class Type> bool MyPittyStack<Type>::push(Type n) { a[i++] = n; return true ; } template < class Type> Type & MyPittyStack<Type>::top() { return a[i]; } int main() { MyPittyStack< int > s; s.push(123); s.top() = 456; cout<<s.top()<<endl; return 0; } |
添加回答
举报
0/150
提交
取消