objective-c – 如何打印出方法名和行号,并有条件地禁用NSLog?

objective-c – 如何打印出方法名和行号,并有条件地禁用NSLog?,第1张

概述我在Xcode中进行调试演示,并希望获得有关使用NSLog的更多信息。 特别是,我有两个问题: >有没有办法方便地NSLog当前方法的名字/行号? >是否有一种方法可以在编译发布代码之前轻松地“禁用”所有NSLogs? 这里有一些有用的宏NSLog我使用了很多: #ifdef DEBUG# define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), 我在Xcode中进行调试演示,并希望获得有关使用NSLog的更多信息。

特别是,我有两个问题:

>有没有办法方便地NSLog当前方法的名字/行号?
>是否有一种方法可以在编译发布代码之前轻松地“禁用”所有NSLogs?

解决方法 这里有一些有用的宏NSLog我使用了很多:

#ifdef DEBUG#   define DLog(fmt,...) NSLog((@"%s [line %d] " fmt),__PRETTY_FUNCTION__,__liNE__,##__VA_ARGS__)#else#   define DLog(...)#endif// ALog always displays output regardless of the DEBUG setting#define ALog(fmt,##__VA_ARGS__)

DLog宏仅用于在设置DEBUG变量(项目的C标志中的-DDEBUG用于调试配置)时输出。

ALog将总是输出文本(如常规NSLog)。

输出(例如ALog(@“Hello world”))将如下所示:

-[libraryController awakeFromNib] [line 364] Hello world
总结

以上是内存溢出为你收集整理的objective-c – 如何打印出方法名和行号,并有条件地禁用NSLog?全部内容,希望文章能够帮你解决objective-c – 如何打印出方法名和行号,并有条件地禁用NSLog?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1049392.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存