2

我在各种实现文件 (.m) 中有一些 C 函数应该标记为static但不是。如何快速、轻松、简单地找到它们?

由于我认为 LLVM 的自由性,并不是所有这些函数都被声明。这使任务变得更加困难。

Xcode Navigator(左侧)窗格有一个 Symbol Navigator 选项卡,但这仅显示在@interface.

在 Search Navigator 选项卡中,我将Style字段更改为“Regular Expression”并使用[a-zA-Z]\(. 这个搜索范围太广了。例如,@selector(也被发现。但对我来说,手动挑选所有热门歌曲并完成我的任务就足够了。

在终端中,我可以做到awk '/[a-zA-Z]\(.*[^;]$/' *.m(该正则表达式在搜索导航器中无法按预期工作)并且我不需要的命中要少得多,但我更喜欢仅 Xcode 的解决方案。

我已经解决了我的问题,但我问这个问题是因为比我更了解 Xcode 的其他人可能有更好的解决方案,而我没有看到类似的问题。

4

1 回答 1

0

“应该标记为静态”是什么意思?是否与“可以标记为静态的,因为它们在编译单元之外未使用”相同?如果是这样,可以使用“nm”从 .o 文件中取出符号,然后找出哪些符号仅在单个 .m 文件中使用。一旦编写了脚本,这将满足“简单、轻松、快速”的目标。:¬)

于 2013-10-08T04:14:45.300 回答