首页 > 解决方案 > 在头文件的B类中调用方法A?

问题描述

class person{
...
public:
get_age(){..}
...
};

class society{
private:
person Ann;
....
};

我不确定如何在类人中使用最少声明的头文件中调用方法 get_age?我试图搜索但找不到确切的例子。类似那个头文件的东西:

society tennis;
tennis.Ann.get_age()

我失败了,试图从类 person 访问方法 get_age() ,因为该方法属于个人而不是社会。如何使用最少的语句访问 get_age()。

标签: c++classinheritancemethodssubclass

解决方案


在标头中创建类实例(对象)通常是一种不好的做法。一旦您将标头包含到任何 .cpp 文件中,其内容就会粘贴到您的 .cpp 文件中,从而导致创建对象的多个定义。例如,编译器/链接器会说你的对象tennis被定义了两次——在你的头文件中,例如在包含你的头文件的 main.cpp 中。


推荐阅读