儿童班预计会有'{'
Child class expected a '{'
我仍在学习C++,这里的一些人帮了我很多,谢谢大家。
我现在有另一个问题:我有一个从a类派生的B类,如下所示:
B.h级
#ifndef CLASSB
#define CLASSB
#include <cstdlib>
#include <string>
#include <vector>
#include <time.h>
using namespace std;
#include "ClassA.h"
class ClassA;
class ClassB: public ClassA{
public:
ClassB(ClassC* classCinstance, int gnr, int type) : ClassA(classCinstance);
};
#endif
ClassB.cpp
#include "ClassB.h"
ClassB::ClassB(ClassC* classCinstance, int gnr, int type) : ClassA(classCinstance){
//Some stuff
}
问题是,当我编译时,它说:
错误C2969:语法错误:";":预期的成员函数定义以"}"结尾
Visual Express告诉我:
错误:应为"{"
当我将光标指向ClassB.h(ClassB构造函数的声明)中第18行的分号时。
我该如何解决?我声明了这个构造函数,所以它存在。。。我在.cpp中声明了它的身体,所以…一切都很好,对吧?
ClassB构造函数声明错误:
ClassB(ClassC* classCinstance, int gnr, int type) : ClassA(classCinstance);
必须是
ClassB(ClassC* classCinstance, int gnr, int type);
头中ClassB
构造函数的声明有一个冒号列表,但它不应该这样做。这是定义的一部分。
因此:
ClassB(ClassC* classCinstance, int gnr, int type) : ClassA(classCinstance);
应为:
ClassB(ClassC* classCinstance, int gnr, int type);
相关文章:
- 没有找到相关文章