反射的概念
允许程序运行时获取类内部信息,并且能操作对象的内部属性和方法。
但C++本身并没有反射的概念,需要通过第三方库来实现。
反射的目标:
- 类对象反射。
- 类成员数据反射。
- 类成员函数反射。
注册时成员为public作用域
通过注册宏实现反射功能
类对象反射
程序运行时读入一个字符串,程序就会自动创建出字符串对应名字的类对象。
例如:
1 | class A; |
这是一个简单的实现,但是并不友好。
因此可以使用单例+工厂模式来实现对类得注册和创建。
后续待更新…
类成员数据反射
类成员函数反射
- 本文作者: KongXinQing
- 本文链接: https://13114987559.github.io/2023/09/23/essay/Cpp反射/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!