这里是一段代码体现的问题:如何使用一个类的对象到另一个类的定义或声明
class Apples {
Apples() {
color = 5;
}
int color;
};
Apples jonathan;
class Fruit {
Fruit() {
type = jonathan.color;
}
int type;
};
错误给出的是:‘乔纳森’未声明(第一次使用此功能) 。
这里是一段代码体现的问题:如何使用一个类的对象到另一个类的定义或声明
class Apples {
Apples() {
color = 5;
}
int color;
};
Apples jonathan;
class Fruit {
Fruit() {
type = jonathan.color;
}
int type;
};
错误给出的是:‘乔纳森’未声明(第一次使用此功能) 。
您发布它的方式不会导致该错误。如果它们位于不同的文件中,则只需确保必要的部分位于头文件中并包含(使用#include)必需的头文件。
实际上更多的错误,代码不真实的,也没有声称我是。除了它包含的一些微不足道的错误之外,它会起作用,尽管我声明它不会。我误解了我的真正问题。事实是,正如user1610015建议的那样,每个类都在不同的标题中,并且每个类的定义都使用另一个类的对象,因此是错误。我很抱歉误解。 – 2013-02-10 14:53:54
您发布的代码将导致编译时错误(例如构造函数是私有的)。所以这不是真正的代码。
但是,使用全局变量被认为是不好的做法,相反,您必须使用成员变量,并在需要的基础上传递引用。
请注意,您的Apple()
构造函数是私有的。那么Fruit()
构造函数。
in C++
Apple jonathan;内声明的主要
int main()
{
Apples jonathan;
}
现在您呼叫的对象(jonathan.color)的类,这是不可能的内部方法
'Apples :: color'不是一种方法,而是一个数据成员;如果它被宣布为“公共”,则使用它是可能的。 – legends2k 2013-06-28 20:23:08
是你的朋友,我的错误 – 2013-06-28 21:41:28
此代码应给予比 – 2013-02-09 21:29:56