我有一个大型的头文件(约10000行),它是由一个脚本/程序自动生成的,我无法控制。
为了避免在我的类声明中包含此文件,我提前声明了我需要的少量类型:
--myclass.h
namespace bl {
class TypeA;
class TypeB;
}
// Other stuff and myclass definition...
现在情况变成了TypeA
和TypeB
不是类名,而是在自动生成的文件中定义为:
typedef SomeUnspecifiedClassName TypeA;
typedef AnotherUnspecifiedClassName TypeB;
我所说的SomeUnspecifiedClassName
是指某种类型,因为它可能会在不同情况下发生变化,所以我无法提前声明这个类型名。
如何提前声明一个typedef?(不能使用c++11)
TypeA
和TypeB
的使用情况,您可以考虑将myclass
重构为一个模板。 - jxh