本文中的类反射指的是对象的类型识别、动态创建能力,并不讨论函数、变量等成员的反射。C++没有提供反射系统,需要我们自己手动实现。本文包括以下内容:
class Foo; Foo *f1 = new Foo(); f1->IsKindOf("Foo"); // 类型识别 Foo *f2 = CreateObject("Foo"); // 动态创建 // + 附加的 class Foo2 : public Foo { ... }; GetBaseClassOf("Foo2") == "Foo"
原文:http://www.cnblogs.com/xiao-liang/p/3553747.html