我收到以下错误:
ISO C ++禁止声明ttTreeInsert,没有类型
ISO C ++禁止声明没有类型的ttTreeDelete
ISO C ++禁止声明没有类型的ttTreePrint
int ttTree的原型:: ttTreePrint()与类ttTree中的任何一个都不匹配 候选人是:void ttTree :: ttTreePrint()
这是我的头文件:
#ifndef ttTree_h
#define ttTree_h
class ttTree
{
public:
ttTree(void);
int ttTreeInsert(int value);
int ttTreeDelete(int value);
void ttTreePrint(void);
};
#endif
这是我的.cpp文件:
#include "ttTree.h"
ttTree::ttTree(void)
{
}
ttTree::ttTreeInsert(int value)
{
}
ttTree::ttTreeDelete(int value)
{
}
ttTree::ttTreePrint(void)
{
}
有人能指出造成这些错误的原因吗?谢谢!
答案 0 :(得分:51)
您忘记了成员函数定义中的返回类型:
int ttTree::ttTreeInsert(int value) { ... }
^^^
等等。
答案 1 :(得分:6)
您的声明是int ttTreeInsert(int value);
但是,您的定义/实施是
ttTree::ttTreeInsert(int value)
{
}
请注意,实现中缺少返回类型int
。相反它应该是
int ttTree::ttTreeInsert(int value)
{
return 1; // or some valid int
}