• 自定义NSLog


    **新建 ExtendNSLog 类,继承自 NSObject

    **在 ExtendNSLog.h 中删除默认代码 添加以下函数声明:

    void ExtendNSLog(const char *file, int lineNumber, const char *functionName, NSString *format, ...);

    **在 ExtendNSLog.m 中删除默认代码 添加以下代码实现:

    void ExtendNSLog(const char *file, int lineNumber, const char *functionName, NSString *format, ...) {
    
        va_list ap;
    
        va_start(ap, format);
    
        if (![format hasSuffix: @"
    "]) {
            format = [format stringByAppendingString: @"
    "];
        }
    
        NSString *body = [[NSString alloc] initWithFormat:format arguments:ap];
    
        va_end(ap);
    
        NSString *fileName = [[NSString stringWithUTF8String:file] lastPathComponent];
        fprintf(stderr, "(%s) (%s:%d) %s",
                functionName,
                [fileName UTF8String],
                lineNumber,
                [body UTF8String]);
    }
    

    **新建 PrefixHeader.pch 文件 输入以下内容:

    #ifdef __OBJC__
    
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
    
    #import "ExtendNSLog.h"
    
    #ifdef DEBUG
    #define NSLog(args...) ExtendNSLog(__FILE__, __LINE__, __PRETTY_FUNCTION__, args);
    #else
    #define NSLog(x...)
    #endif
    
    #endif
    

    **选择 项目->TARGETS->[ProjectName]->Build Settings

    在搜索框输入 prefix header 在 Prefix Header中输入 [ProjectName]/PrefixHeader.pch

    **运行测试,修改运行模式

    搞定收工!

    转自:http://liufan321.github.io

  • 相关阅读:
    单(single)
    cdq分治
    寿司
    qtth
    二分,倍增的一些思考(lost my music:可持久化栈)
    手写堆、哈希表
    保留字,关键字
    测试19,20,21
    要买的书
    测试18:T2:可爱精灵宝贝
  • 原文地址:https://www.cnblogs.com/yangzhifan/p/4869490.html
Copyright © 2020-2023  润新知