如何将一个类的对象用于另一个类的定义或声明

时间:2013-02-09 21:17:33

标签: c++ class object

这是一段体现问题的代码:

class Apples {
    Apples() {
        color = 5;
    }
    int color;
};
Apples jonathan;
class Fruit {
    Fruit() {
        type = jonathan.color;
    }
    int type;
};

给出的错误是:'jonathan'unclaclared(首先使用此函数)。

3 个答案:

答案 0 :(得分:0)

您发布它的方式不会导致该错误。如果它们位于不同的文件中,您只需确保必要的部分位于头文件上并包含(使用#include)必要的标题。

答案 1 :(得分:0)

您发布的代码将导致编译时错误(例如构造函数是私有的)。所以这不是真正的代码。

但是,使用全局变量被认为是一种不好的做法,相反,您必须使用成员变量,并在必要的基础上传递引用。

请注意,您的Apple()构造函数是私有的。 Fruit()构造函数也是如此。

答案 2 :(得分:0)

在c ++中 苹果乔纳森;在main

中声明
int main()
{
    Apples jonathan;
}

现在你在一个不可能的类中调用对象的方法(jonathan.color)