谁在objective-c中调用该函数?

时间:2015-06-12 09:24:37

标签: ios objective-c

是否可以知道哪个函数调用objective-c中的当前函数?

例如,我有100个函数调用函数X.在函数X中,我们能够定义100个函数中已调用的函数吗?

感谢。

3 个答案:

答案 0 :(得分:3)

我使用的是define指令:

#define CALLER_OF_METHOD NSLog(@"My Caller: [%@]", [[[[NSThread callStackSymbols] objectAtIndex:1] componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"[]"]] objectAtIndex:1])

请尝试,让我知道它是否适合你chipbk10

答案 1 :(得分:2)

如果您不想编写任何代码,请在函数中添加一个断点,然后在左侧显示调用树,您可以看到为了到达该断点而调用了哪些函数

enter image description here

答案 2 :(得分:2)

需要在函数X中运行应用程序集断点。当应用程序在断点处停止时,检查xcode中Debug导航器中的函数。你会知道哪个函数叫做函数X.参见下图中的序列。

enter image description here