error C2504: “CActiveXDocControl”: 基类没有定义

这样的错误,通常,第一个文件失败:

1.相互头包括

2.头文件秩序

此错误是编译错误,和“inclued头文件“有关

问题描写叙述

有三个头文件AgentSDK.h、AA.h、BB.h,当中CBB类继承自CAA。

头文件包括顺序例如以下。

1.AA.h包括AgentSDK.h

2.AgentSDK.h包括BB.h

3.BB.h包括AA.h

原因分析:编译器首先编译AA.h,因其包括AgentSDK.h,引入AgentSDK.h继续编译。由于AgentSDK.h包括BB.h,加载BB.h内容准备编译。

CBB继承自CAA,CAA尚未编译成功。此时VS2008错误列表中会出现 error C2504: ”CAA“: 没有定义基类。

此编译错误就是在编译AA.h头文件时出的错。

 结:头文件在包括顺序上不要成为一个闭环,它们最好应的树结构的顺序。


版权声明:本文博客原创文章,博客,未经同意,不得转载。

你可能感兴趣的:(ActiveX)