【发布时间】:2015-05-26 22:56:04
【问题描述】:
假设我有 4 个类 A、B、C 和 D,我想在一个实现来自另一个 .h 文件用户的纯虚函数的类中使用所有 4 个类。我的问题是如何将这 4 个类包含在一个 .h 中,这样 .h 的 .cpp 将允许我在类中调用这些函数。
这是我迄今为止尝试过的:
#include "User.h"
#include "A.h"
#include "B.h"
#include "C.h"
#include "D.h"
Class create : public User, public A, public B, public C, public D
{
public:
create();
virtual ~create();
bool a1();
bool b1();
bool c1();
bool d1();
int a2();
int b2();
int c2();
int d2();
};
然后,当我尝试在 create.cpp 中调用这些函数(在 A.cpp、B.ccp、C.cpp、D.cpp 中声明)时,我被告知“未定义对 A::a1( ) 的引用。 ..等等。
这有意义吗?
【问题讨论】:
-
您是否链接到来自 A.cpp 等的已编译对象?
-
在 C++ 术语中,文件内容与其名称之间没有必要存在关联。你可以安全地做任何你喜欢的事情。在 Animal.h 中定义 Plant 类是完全安全的。只要您正确链接文件,它就会起作用。
-
请做一个简短的例子,我们可以复制并粘贴到我们的开发环境中,看看这个“未定义的参考”。
-
我很抱歉我或多或少是 C++ 的初学者。基本上eclipse在我的create.cpp文件中给了我错误“未定义的A:a1()引用”。所以它连接了 a1( ) 函数来自 A 类的事实,所以我的问题是如何“定义”对该函数的引用。
-
@GWW 如何链接那些已编译的对象?
标签: c++