【发布时间】:2013-02-15 01:28:34
【问题描述】:
我正在学习 OOP 并且有疑问。假设我有一个包含 ClassB.h 的文件 ClassA.h,并且在某些时候我的 ClassB.h 需要包含 ClassA .h。
这会产生一个错误,我想我明白为什么会发生这种情况,因为我得到了一个无限的包含循环。但是在这种情况下该怎么办?有没有办法解决这个错误?或者我应该重新考虑我的课程以避免它?这是否意味着我的班级组织设计不佳?如果是这样,有什么方法可以安排我的“类图”并避免这种情况?
我只是想知道在这种情况下最佳做法是什么。另外,为什么“#pragma once”指令不能解决这个问题?提前致谢。
【问题讨论】:
-
它应该有一个连字符来分隔标题,我现在补充一下,很抱歉造成混乱。
-
通常习惯上包含导致问题的实际代码的代码 sn-p。它可以是您编写的测试用例,只是为了在此处发布,只要它确实存在您要询问的问题并且您已经对其进行了测试以确保它。原因是很难对这样的问题给出一个好的具体答案。