如何解决struct 和 enum 类的循环引用问题
我有一个头文件(A):
namespace CChristianLifeMinistryDefines
{
using S_DISCUSSION_HIST_ITEM = struct tagDiscussionHistItem
{
CString strName;
Schools eSchool;
COleDateTime datMeeting;
};
using DiscussionItemHistList = list<S_DISCUSSION_HIST_ITEM>;
}
上面的头文件包含在另一个头文件(B)中:
#include "ChristianLifeMinistryDefines.h"
using namespace CChristianLifeMinistryDefines;
enum class Schools
{
kMain,kClass1,kClass2,kCount
};
我遇到的问题(我明白为什么)是在 Schools
结构中引用了 S_DISCUSSION_HIST_ITEM
,该结构在 Schools
枚举之前定义。
错误 C3646:“eSchool”:未知覆盖说明符
枚举已在我的项目中定义,无法移动,否则编译时可能会崩溃。
我所做的是将类定义从文件 B 移动到文件 A。但是还有其他解决方案吗?我不能简单地在标题 A 中包含标题 B,因为我得到了一个循环引用,而且我无法理解我在互联网上找到的内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。