假设我们有这样的情况:
基地.h:
class Base { };
派生的.h:
#include "base.h"
class Derived : public Base { };
extern Derived *variable;
派生的.cpp:
#include "derived.h"
Derived *variable;
variable
声明为 else.cpp 中的指针是否正确Base
?
class Base;
extern Base *variable;
C++Builder 链接器没有抱怨,一切似乎都正常。根据标准这是安全和正确的,还是每个声明都variable
应该属于同一类型?