我有一个场景,我无法在另一个类中创建一个类对象。方案如下:
class base
{
public:
base();
~base();
int getbase(void){return baseVar;}
void setbase(int arg){baseVar = arg;}
private:
int baseVar;
};
class derived1 : public base
{
public:
derived1();
~derived1();
int getbase(void);
void setbase(int arg);
private:
int derVar1;
};
class derived2 : public base
{
public:
derived2();
~derived2();
int getbase(void);
void setbase(int arg);
private:
int derVar2;
};
class container
{
public:
container();
~container();
derived1 derObj1;
derived2 derObj2;
private:
int containerVar;
};
class usage
{
public:
usage();
~usage();
private:
container containerObj; // compilation error
int usegeVar;
};
编译错误是: 错误C2146:语法错误:缺少';'在标识符'containerObj'之前 错误C4430:缺少类型说明符 - 假定为int。注意:C ++不支持default-int 错误C4430:缺少类型说明符 - 假定为int。注意:C ++不支持default-int 我正在使用vc ++
我请求一些人如何纠正这个编译错误?提前致谢。
答案 0 :(得分:0)
将粘贴的代码复制到一个空的VisualC ++ 2k8项目上并且没问题!