c++ typeid和type_info具有什么样的关联

假设 p 是含有虚函数的类的指针,且当前指向派生类。
形如 typeid(*p)的结果类型是type_info,(不是说是在运行时确定的)是如何返回的派生类的类型的,?????

阅读 2.5k
1 个回答

std::type_info 是用来描述类型的。

如果 p 指向派生类,那么 typeid(*p) 返回的 std::type_info 对象描述了这个派生类的类型。

std::type_info

不过说是描述,std::type_info 也只是提供了 name() 方法(“名字”)跟相等比较(用于判断所描述的是否为同一类型)。而且,name() 的返回值通常人看不懂 .... 结果就变成只有 operator == 可以用 ...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题