Liu Zhian 2017-05-24 12:35 采纳率: 60%
浏览 959

关于c++模板和类实现时的问题,求助!

我想自定义一个堆(stcak)的实现,代码如下;

#include <iostream>
using namespace std;
const int SIZE=100;
template <typename T>
class iStack
{
public:
    iStack(void);   
    void push(const T &n); 
    void pop();   
    T GetPop();   
    bool empty(); 
    int size();   
    void ClaerStack(); 
    ~iStack(void);  
private:
    T stack[SIZE];  // array to salve elements
    int top;   
};
template<typename T>
iStack<T>::iStack(void)
{
    top=-1;
}

template<typename T>
iStack<T>::push(const T &n)
{
    if (SIZE-1==top)
    {
        cout<<"sorry!spill of the stack!"<<endl;
        return;
    }
    else
    {
        stack[++top]=n;
    }
}
template<typename T>
iStack<T>::pop()
{
    if (-1==top)
    {
        cout<<"no element to delete!"<<endl;
        return;
    }
    else
    {
        top--;
    }
}

template<typename T>
iStack<T>::ClaerStack()
{
    top==-1;
}

template<typename T>
iStack<T>::empty()
{
    if (-1==top)
    {
        return true;
    }
    return false;
}

template<typename T>
iStack<T>::size()
{
    return top+1;
}

template<typename T>
iStack<T>::~iStack(void)
{

} 

编译时,报错如下:

 1>f:\c++代码\stack类模板\stack类模板\istack.cpp(38): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>f:\c++代码\stack类模板\stack类模板\istack.cpp(51): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>f:\c++代码\stack类模板\stack类模板\istack.cpp(57): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>f:\c++代码\stack类模板\stack类模板\istack.cpp(67): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>f:\c++代码\stack类模板\stack类模板\istack.cpp(73): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
  • 写回答

3条回答

  • Xefvan 2017-05-25 03:42
    关注

    函数前缺少类型说明符~~~

    看报错啊

    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?