关于gcc输出typeid完整名的方法
这是我之前的文章:
https://www.cnblogs.com/jisuanjizhishizatan/p/16149500.html
对于typeid,可以使用如下的方法输出它的名字,本质上name()方法返回的是一个string类型的字符串。
cout<<typeid(变量名).name<<endl;
在不同的环境中,输出的是不同的结果。对于VC之类的编译器,输出的是完整名字。在部分编译器中,输出的只是单独的字母。
如,只输出了i。
对于如何输出完整名的方法,我也在网上进行了简单搜索,最终找到了cxxabi.h中的一个函数:
cout<<abi::__cxa_demangle(typeid(变量名).name(),0,0,0)<<endl;
这是测试代码,对于函数指针的输出: