<typeinfo>

std::type_info

class type_info;
类型信息类型
存储关于类型的信息。

typeid 操作符(作为 const 限定的左值)返回此类的一个对象。虽然其实际动态类型可能是派生类。

可用于比较两个类型或检索标识类型的相关信息。

typeid 可应用于任何类型或具有类型的任何表达式。
如果应用于引用类型(左值),则返回的 type_info 标识被引用的类型。任何 constvolatile 限定的类型均被标识为其未限定的等价物。

typedef 类型被认为与其别名类型相同。

typeid 应用于多态类类型(声明或继承了虚函数的类)的引用或解引用的指针时,它会考虑其动态类型(即最派生对象的类型)。这需要 RTTI(运行时类型信息)可用。

typeid 应用于解引用的空指针时,将抛出 bad_typeid 异常。

typeid 返回的对象的生存期将持续到程序结束。

type_info 的复制和赋值运算符是私有的:此类对象无法被复制。
type_info 的复制和赋值运算符已被删除:此类对象无法被复制。
请参阅 type_index 以了解一个包装类,该类适配 type_info 值,使其可复制并能使用标准的哈希值进行索引。

成员函数


注意:没有公有的复制构造函数或复制赋值运算符。

另见