检查字符串的typeinfo时输出奇怪

时间:2016-01-01 18:58:35

标签: c++ string types typeinfo

在c ++中检查字符串的typeinfo时,它返回一个奇怪的输出A19_c A19_c的意思是什么?

当显式初始化为引用类型字符串时,它可以查找并返回Ss

#include <iostream>
#include <typeinfo>
using namespace std;

int main() {
    /* Enter your code here. Read input from STDIN. Print output to STDOUT */   

    std::string mystr = "I am a code monkey";
    cout << typeid(mystr).name() << endl;
    cout << typeid("I am a code monkey").name() << endl;
    return 0;
}

[OUT]:

Ss
A19_c

1 个答案:

答案 0 :(得分:2)

type_info::name不需要返回任何人类可读的内容。它是一个实现定义的名称。它甚至不需要唯一。所以它的确切含义取决于实现。此外,您无法保证从任何其他实施中获得$timeout()