C++11 | 运行时类型识别(RTTI)

本文介绍了C++11中运行时类型识别(RTTI)的使用,包括`type_info`类、`typeid`操作符和`type_index`类。`type_info`类提供了类型名称和哈希码等信息,`typeid`用于获取运行时的类型信息,而`type_index`作为`type_info`的封装,方便在关联容器中作为索引使用。此外,文中还给出了相关代码示例。
摘要由CSDN通过智能技术生成
                       

C++11里的RTTI更好用了,参见这里:http://en.cppreference.com/w/cpp/types。与RTTI相关的有几个类和方法:

  • type_info类
  • typeid操作符
  • type_index类

type_info

type_info类在头文件<typeinfo>中定义,代表了一个C++类型的相关信息。一般由typeid操作符返回,不能自己构造。

type_info是实现相关的,不同编译工具链的实现可能不一致。

下面的代码可以打印出int类型的名字:

    const std::type_info &tiInt = typeid(int);    std::cout << "tiInt.name = " << tiInt.name() << 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值