Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iPhone应用程序中跟踪方法调用_Iphone - Fatal编程技术网

在iPhone应用程序中跟踪方法调用

在iPhone应用程序中跟踪方法调用,iphone,Iphone,在iPhone应用程序运行时,如何跟踪方法调用及其顺序?我应该使用哪种仪器?没有任何仪器直接执行此操作。获取此类信息的两个选项: 1) 在调试器中设置断点。然后,您可以使用“单步执行”、“单步执行”和“单步执行”按钮跟踪执行情况 2) 将NSLogs放在代码中您感兴趣的地方: -(void) someMethod { NSLog (@"Starting someMethod"); // rest of the method is here } 然后,您可以在控制台中读取NSLogs。您

在iPhone应用程序运行时,如何跟踪方法调用及其顺序?我应该使用哪种仪器?

没有任何仪器直接执行此操作。获取此类信息的两个选项:

1) 在调试器中设置断点。然后,您可以使用“单步执行”、“单步执行”和“单步执行”按钮跟踪执行情况

2) 将NSLogs放在代码中您感兴趣的地方:

-(void) someMethod {
  NSLog (@"Starting someMethod");
  // rest of the method is here
}
然后,您可以在控制台中读取NSLogs。

您也可以使用

NSLog(@"%s",__PRETTY_FUNCTION__);

打印当前正在运行的方法

,在我跟踪自己的代码的情况下,这很好。实际上,我想深入研究其他人编写的代码,并想了解代码流。由于它是一个庞大的代码库,这些方法都不能帮助我。还有其他选择吗?潜入别人的代码总是一个挑战。没有简单的答案。除了上述技术之外,我还经常尝试调整一些小东西,看看其影响是否与我所认为的一样。从字符串常量和#定义等非常小的东西开始;然后转到更改实用程序函数,然后转到更大的代码方法。当使用其他人编写的源代码跟踪调试生成时,使用调试器也同样有效。