首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >3个.h和3个.cpp文件

3个.h和3个.cpp文件
EN

Stack Overflow用户
提问于 2011-03-04 20:21:24
回答 3查看 108关注 0票数 0

我正在构建一个应用程序,它应该使用从1.h到2.h的一个类,它的定义如下:

代码语言:javascript
复制
<classname> *p;

现在我可以在2.cpp中使用p了。但我也想在3.cpp中使用它。我不能在3.cpp中包含2.h。有没有办法让它在3.cpp中可见?

谢谢你的帮助。

EN

回答 3

Stack Overflow用户

发布于 2011-03-04 20:32:14

使用一些代码更具描述性的问题示例将是有价值的。

一般情况下,尝试执行以下操作:

  • 每个标头应该只包含它自己的同名类。
  • 如果一个类正在使用另一个类,并且您可以在该标头中主动声明它,请执行do.

您不能主动声明该类是否具有另一个类的实例,或者它是否从另一个类派生。

  • 编译单元(cpp)文件应该包含它们所需的所有头文件。理想情况下,最好先包含自己的标头。
票数 0
EN

Stack Overflow用户

发布于 2011-03-04 21:36:25

你需要提供更多的信息,但我想我知道你试图在定义的头中使用一个类。另一个头,但由于某些原因,你不能将它定义到你正在处理的头中。解决方案是创建一个“临时”定义,而不是一个include。

myClassA类;

在1.h之上,所以你可以引用它,但是没有实现(因为它是在2.cpp中实现的)

票数 0
EN

Stack Overflow用户

发布于 2011-03-05 03:33:07

一个简单的规则是一个类,一个头文件。

给定:

代码语言:javascript
复制
A.h:
class A
{
};

B.h:
#include "A.h"
class B
{
  A obj;
};

C.h:
#include "A.h"
class C
{
  A obj;
};

我希望这能回答这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5193622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档