如何包含两个不同的标头,其中包含两个具有相同名称的不同类?
|
我正在对旧的MFC应用程序进行一些更改。标头“ stdafx.h”包括另一个标头“ mfcextensions.h”,它定义了类“ CMemDC \”。在另一个标头中,我需要包含\“ afxtoolbar.h \”,以便可以使用\“ CMFCToolBar \”类。问题是,\“ afxtoolbar.h \”最终将包括\“ memdc.h \”,它定义了一个类“ CmemDC \”。结果是可以理解的会出现编译错误2011。
现在,我确实可以控制定义“ CMemDC”的现有代码,但是该代码已在很多地方使用,因此我不希望对其进行过多更改。
解决这个问题的最佳策略是什么?我猜想我可以以某种方式使用名称空间,或者另一种选择是重命名我们现有的类“ CMemDC”,但这更多地是避免了该问题,而不是永久解决它。
干杯
没有找到相关结果
已邀请:
3 个回复
捐焦
递劝臼类洪
但是,这不太明确(因为无法在代码中的某一点直接看到您正在使用哪个CMemDC),并且如果您在同一范围内使用两个类,则将无法使用。
羔磺