日期:2014-05-16  浏览次数:20695 次

关于使用nm命令查看的疑惑
为什么我使用命令查看一个.so文件的时候函数名是这样的,好奇怪

00009fa8 T _Z22ICTCLAS_ImportUserDictPKci9eCodeType
00009634 T _Z24ICTCLAS_ParagraphProcessPKciPc9eCodeTypeb
00009764 T _Z25ICTCLAS_ParagraphProcessAPKciRi9eCodeTypeb
00009c30 T _Z26ICTCLAS_ImportUserDictFilePKc9eCodeType
00009b24 T _Z26ICTCLAS_ParagraphProcessAWPKcP17tagICTCLAS_Result9eCodeTypeb

------解决方案--------------------
用C++写的代码吗
------解决方案--------------------
c++ name mangling
http://en.wikipedia.org/wiki/Name_mangling
------解决方案--------------------
Linux下使用c++filt 查看:

c++filt  _Z22ICTCLAS_ImportUserDictPKci9eCodeType
------解决方案--------------------
C++下是正常的,因为要支持函数重载这些特性,不得不这样。