c++中任意类型的研究

来源:互联网 发布:软件研发 高级工程师 编辑:程序博客网 时间:2024/06/04 00:12
- c或者c++中,可以指向任意类型的关键字就是无符号类型void*,任何一个对象都可以使用void*来指向。    - 很显然,这种使用方式极其不安全。    - 因为void*是指针,所指向的对象如果已经被释放,再使用any时就会出现问题;    - 如果这种情况下,重新new一个相同的对象,使用any指向new的对象,不过这样的话需要自己管理指针,使用起来会非常麻烦。- 在c++中,有个高级的功能就是运行时类型识别(RTTI),其中可以使用typeid操作符获得指针或引用所指对象的实际类型- Any内部维护了一个基类指针,通过基类指针擦除具体类型,any_cast时再通过向下转型获取实际数据。当转型失败时打印详情。
原创粉丝点击