【问题标题】:C++: Identify type of an object [duplicate]C ++:识别对象的类型[重复]
【发布时间】:2011-09-13 21:37:56
【问题描述】:

可能重复:
Finding the type of an object in C++

... 不使用某种魔法值 ID?是否有任何语言功能或某些技术可以让我做到这一点?

【问题讨论】:

  • 这取决于你想要做什么。如果您想判断您的对象是否属于某种类型,那么@miku 的链接很好。如果要获取任意对象的类型名称,可以使用typeid(首先包括<typeinfo>)。

标签: c++


【解决方案1】:

你为什么要这样做? 在任何情况下,只要给出一个 void * 就不可能找出对象在 C++ 中至少是什么类型。 QueryInterface 模式在 COM 模型中出现的原因是这个和其他原因。

【讨论】:

    【解决方案2】:

    总是有typeid。但是你到底想做什么?这 typeid( object ).name() 的结果是实现指定的,并且 它们是否对您尝试做的事情有用取决于 您正在尝试做什么,以及您正在使用哪种实现。 (你 可以使用 typeid( object ) 周围的包装器作为映射的键。)

    【讨论】:

      猜你喜欢
      • 2012-05-18
      • 1970-01-01
      • 1970-01-01
      • 2013-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多