【转】Swift自定义print打印函数
原文网址:https://www.jianshu.com/p/de222deded93
我们在使用代码调试中 经常使用print打印函数,有时打印的多了,不好定位到时哪一控制器,哪一行代码,我们今日就是解决这个问题
-
获取打印的所在文件
在Swift中获取 文件的命的函数是 #file 转化成 OC字符串获取
let file = (#file as NSString).lastPathComponent;
print("\(file)-123");
-
获取打印的方法名称 #function函数
let funcName = #function;
print("\(file):\(funcName)--123");
//打印结果: ViewController.swift:viewDidLoad()--123
-
获取代码所在的行数 #line函数
let file = (#file as NSString).lastPathComponent;
print("\(file):\(#line)");
-
写一个全局的函数 定义打印
///全局函数 T是泛型 传入不同的参数
func CCLog<T>(_ message:T,file:String = #file,funcName:String = #function,lineNum:Int = #line){
let file = (file as NSString).lastPathComponent;
// 文件名:行数---要打印的信息
print("\(file):(\(lineNum))--\(message)");
}
-
调整在哪一个状态下打印 (Dbug 和Release)
![](http://upload-images.jianshu.io/upload_images/2838971-1344cde121e2a19f.jpg)
配置文件.jpg
定义 全局函数 添加#if DEBUG #endif
判断
///全局函数
func CCLog<T>(_ message:T,file:String = #file,funcName:String = #function,lineNum:Int = #line){
#if DEBUG
let file = (file as NSString).lastPathComponent;
print("\(file):(\(lineNum))--\(message)");
#endif
}
Stay hungry, stay foolish!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步