zoukankan      html  css  js  c++  java
  • swift学习:自定义Log

    import UIKit
    
    /*
     总结:1:let file = (#file as NSString).lastPathComponent,#file获取的是打印所在的文件
    的全路径,转成NSString才能调用lastPathComponent获取的是路径最后的.后面的元素,as NSString转成NSString类型
         
          2:let funcName = #function,获取打印所在的方法
          3;let lineNum = #line,获取打印所在行数
          4:拼接字符串的时候,可以用String方法的formart方法,打印可以使用插值运算:()
          print("(file):[(funcName)]((__LINE__))-123")
     
     */
    class ViewController: UIViewController {
    
        override func viewDidLoad() {
            super.viewDidLoad()
            
            // 1.获取打印所在的文件
            let file = (#file as NSString).lastPathComponent
            
            // 2.获取打印所在的方法
            let funcName = #function
            
            // 3.获取打印所在行数
            let lineNum = #line
            
            // print("(file):[(funcName)]((__LINE__))-123")
            // print("(file):[(funcName)]((__LINE__))-123")
            
            XMGLog("hello swift")
        }
    }
    import UIKit
    
    @UIApplicationMain
    class AppDelegate: UIResponder, UIApplicationDelegate {
    
        var window: UIWindow?
    
    
        func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
            
            // print("AppDelegate-123")
            XMGLog("123")
            
            return true
        }
    }
    
    /*
     总结:自定义Log:
     v定义Log 1. 定义Log的打印内容
     打印所在的 件 #FILE 打印所在的方法 #FUNCTION 打印所在的行 #LINE 
     默认参数:当在方法中传参数时,也可以传入默认参数,定义:file : String = #file
     全局函数:在AppDelegate中定义全局函数:泛型传打印内容:func XMGLog<T>(_ messsage : T, file : String = #file, funcName : String = #function, lineNum : Int = #line)
     2.Log在Debug下 打印,在release下 不打印
     定义标记项 —>buildSettings—>搜索swift flag—>Debug -> -D DEBUG 做标记--------在项目中实现:#if DEBUG    #endif
     
     */
    
    func XMGLog<T>(_ messsage : T, file : String = #file, funcName : String = #function, lineNum : Int = #line) {
        
        #if DEBUG
        
        let fileName = (file as NSString).lastPathComponent
        
        print("(fileName):((lineNum))-(messsage)")
        
        #endif
    }

  • 相关阅读:
    DJANGO
    前端--BootStrap
    前端--JQuery
    前端--JavaScript
    前端--CSS
    前端--HTML
    python中面试题积累
    python中一些小的知识点
    python中字典的增删改查及相关知识点
    python中列表的增删改查以及其它相关方法
  • 原文地址:https://www.cnblogs.com/cqb-learner/p/5887655.html
Copyright © 2011-2022 走看看