我知道这几乎是一个愚蠢的问题。我几乎不知道编译器是如何工作的。
但是最近我想找到编译器为我的ivar生成的符号名称,我的方法。 我在哪里以及如何知道答案? (我只使用了一些IDE。所以如果解决方案更简单。如果你提供的指令非常明确,那将会很有帮助)
(顺便说一句,有什么参考可以让我了解这样的事情吗?)
PS。我是IOS开发者。如果gcc和LLVM在这个问题上有不同的答案,我想知道两者。
答案 0 :(得分:4)
您可以使用nm转储二进制对象的内容。然后,每个编译器都有自己的修改方式。我建议您查看Name mangling for objective C in wikipedia,它将帮助您了解修剪工作的效果。
答案 1 :(得分:0)
当然,GCC和Clang必须具有兼容的名称修改方案,因为它们可以使用彼此的代码。
答案 2 :(得分:0)
如果您使用的是XCode 3,请选择一个源文件,然后从Build菜单中选择“Show Assembly Code”。
显然XCode 4用户不需要汇编代码: - (