可能重复:
Can I ungarble GCC's RTTI names?
我已经开始使用代码::与gcc一起使用的代码块(只是再也受不了VS2010了),尽管我对所有这些都很满意,但是在gcc中肯定没有那么好的地方是,当我想使用typeid时,我得到的不是确切的类型名称,而是一些符号符号(为什么?为什么它们不能和类型名称一起使用?)无论如何,我听说c++filt可以帮助解决这类问题,但我现在不知道如何使用它(或者安装它-我需要下载吗?)
发布于 2011-10-22 10:54:46
typeid返回对std::type_info实例的引用,因此我假定您正在使用它的name()方法。
要回答为什么您没有得到“精确”类型名称的问题:name()返回一个实现定义的字符串,因此您不应该依赖它有任何意义。特别是,它甚至不一定是唯一的类型。
您应该直接使用==、!=或.before()比较==对象,如果有.hash_code()支持,则可能与.hash_code()合并。
https://stackoverflow.com/questions/7858890
复制相似问题