1

我是 Objective-C 的新手,我正在尝试了解预定义方法的工作原理。我浏览了 XCode 的文档和定义该方法的 *.h 文件。但是,我渴望阅读 *.m 文件或任何其他可以帮助我了解该方法如何工作的文档。

例如 -isEqualToString:(NSString *)检查两个字符串(类型为 NSString)是否相等。我对这个描述不满意。我很想知道该方法在内部是如何工作的,或者它遵循的算法是什么。我在哪里可以找到这些信息?

谢谢您的帮助。

4

2 回答 2

1
  • isEqualToString:(NSString *) 是在 NSString 类中定义的方法。Apple 为您提供了框架,但它们不提供这些方法的实现。因此,您看不到标准框架库背后的源代码。

编辑:您可以创建一个二进制文件并使用此应用程序检查汇编代码:http: //itunes.apple.com/us/app/hopper-disassembler/id422856039 ?mt=12

于 2012-08-22T20:09:49.360 回答
1

不幸的是,Apple 框架的许多实现 ( .m) 文件并未公开提供。你有几个选择:

  1. 正如 Matthias 在评论中建议的那样,使用调试器并检查为该方法生成的汇编代码。
  2. 浏览GNUstep项目的存储库,该项目与 Apple 类有一些等价物。
于 2012-08-22T20:10:12.353 回答