我想了解此类错误的@@YAHXZ
部分:
错误LNK2019未解析的外部符号“int __cdecl func2(void)” (?func2 @@ YAHXZ)在函数_main。
中引用
这只是一个例子,但我已经看到了其他类型的奇怪信件,我现在就不记得了。我在哪里可以找到关于它们的解释?
答案 0 :(得分:3)
这称为«name mangling»,或«名字装饰»。
由于C ++支持函数重载,因此符号名称以特定方式生成,通常基于参数的类型。
以下是Microsoft网站上的官方文档:
https://msdn.microsoft.com/en-us/library/56h2zst2.aspx
修改强>
Microsoft不提供有关名称修饰的完整文档
如果您想知道符号的确切含义,我建议您阅读 Agner Fog关于调用约定的文档:
http://www.agner.org/optimize/calling_conventions.pdf