zoukankan      html  css  js  c++  java
  • Swift:Debug和Release状态下错误输出

       在编写项目的过程中,我们常常会打印信息到控制台,通过打印的信息来判断代码的流程或者正确性。但是这些信息仅仅在Debug的状态下需要,一旦版本发布之后,我们就不需要这些打印操作了。如果是在发布版本之前,程序员手动一个个的去注释或者删除打印操作,这必然是一件浪费时间而又麻烦的事情。如果不处理,上线的版本运行在手机中,这些打印操作势必会影响一些性能的。下面就记录一下在项目中如何处理。

            Debug下输出信息至控件台,Release下不输出。 

    一、在OC中,我们常常会通过一个宏定义来控制打印操作。

    #ifdef DEBUG
    #define MyLog(...) NSLog(__VA_ARGS__)
    #else
    #define MyLog(...)
    #endif
     
    二、在Swift中一般使用下面两种方法来控制。
     
    1、自己写一个工具类 DebugLogTool, 通过控制isDebug的值来控制打印情况。(不推荐)
    class DebugLogTool:NSObject{
        private static let isDebug:Bool = true
        
        static func debugLog(item:Any){
            if isDebug{
                print(item)
            }
        }
    }
     
    2、通过配置工程文件,加上工具类 DebugLogTool。(推荐)
    import UIKit
    class DebugLogTool: NSObject {
        
        static func debugLog(item:Any){
            #if DEBUG
                print(item)
            #else
                
            #endif
        }
    }
     
  • 相关阅读:
    PHP延迟静态绑定
    PHP SPL神器实现堆排序
    魔术方法__sleep 和 __wakeup
    SPL 笔记
    PHP中对象的深拷贝与浅拷贝
    PHP的垃圾回收机制详解
    深入理解PHP中赋值与引用
    xdebug安装及使用小结
    工作中碰到的一个问题(cookie相关)
    分享一个解析XML成为php数组的方法
  • 原文地址:https://www.cnblogs.com/panda1024/p/6606052.html
Copyright © 2011-2022 走看看