当前位置: 首页 > news >正文

OBJC调试日志控制的宏定义

一直以来都用NSLog输出日志,没有做任何处理。既影响性能,还容易泄漏数据。

问deepseek,可以用宏定义控制日志是否打印,增加一个开关,调试时打开,发布时关闭,非常方便。

// 在全局头文件中定义(如 PrefixHeader.pch)
#define ENABLE_DEBUG_LOG 0  // 1=开启,0=关闭#if ENABLE_DEBUG_LOG
#define DLog(fmt, ...) NSLog((@"[DEBUG] %s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define DLog(...)
#endif

 代码可以放到预编译文件(PCH文件)。

现在新版xcode新建项目默认都不创建PCH文件,可以自己新建,Other类里的PCH File。

新建PrefixHeader.pch后,选中项目,再选中PROJECT,选择Build Settings,选择ALL,筛选框输入Prefix Header,输入PrefixHeader.pch的完整路径,或者把文件拖进输入框。

没有日志输出,清爽。

http://www.sczhlp.com/news/2437/

相关文章:

  • Dify安装
  • 卷积神经网络
  • 批量梯度下降
  • 图像生成-FUDUKI解读-01-14 - jack
  • 批处理化
  • 33、简历插入图片
  • 第一章
  • 当“她”不在的四年里,小姨子们竟变成了这样……|女神保卫战剧情体验
  • 测试人员工作指南
  • ManageEngine卓豪如何助你轻松应对GMP/FDA审计?
  • 批量添加edge的ie兼容模式网站
  • Elasticsearch读写优化,1000 到88000/s
  • SC3超低功耗裂缝仪 墙体地表裂缝全天候监测
  • 一文教会你基于 Rainbond 部署 DolphinScheduler 高可用集群
  • 【题解】tupc2024_o Twin Contests
  • 前馈神经网络
  • 最新版likeshop上门家政服务源码 基于likeadmin-php开发的上门预约系统
  • 【解决】Qt Creator只显示.pro文件 / Cannot run compiler cl.
  • LHA8951国产化代替AD7915芯片
  • 深入解析:FSMC的配置和应用
  • keil编译贼慢
  • Vidar Stealer:隐藏在Steam游戏中的信息窃取恶意软件分析
  • 读书笔记:Oracle数据库连接模式:专用、共享和DRCP,到底怎么选?
  • 故障处理:event enq: JZ – Join group dictionary when in-memory disable
  • 国产芯片LHA8961,代替AD7916
  • 226-基于Xilinx Kintex-7 FPGA K7 XC7K325T PCIeX8 四路光纤卡
  • GCD定时器DispatchSourceTimer崩溃问题
  • 【直播预约】天翼云如何通过 DolphinScheduler 实现大数据自动化与全链路血缘,探索实践亮点!
  • 面经学习-ECDHE加密的TLS
  • 关于python环境库导出