zoukankan      html  css  js  c++  java
  • 尝试一下markdown

    尝试一下markdown

    简单介绍以下几个宏:

    • __VA_ARGS__是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出错。
    • __FILE__宏在预编译时会替换成当前的源文件名
    • __LINE__宏在预编译时会替换成当前的行号
    • __FUNCTION__宏在预编译时会替换成当前的函数名称
    1. 在***-Prefix.pch里面添加, 重新定义系统的NSLog,__OPTIMIZE__ 是release 默认会加的宏
      `#ifndef OPTIMIZE

    define NSLog(...) NSLog(VA_ARGS)

    else

    define NSLog(...) {}

    endif`

    2.在***-Prefix.pch里面添加
    `#ifdef DEBUG

    define DLog(format, ...) NSLog((@"[文件名:%s]" "[函数名:%s]" "[行号:%d]" format), FILE, FUNCTION, LINE, ##VA_ARGS);

    else

    define DLog(...);

    endif`

    1. 在***-Prefix.pch里面添加, 重新定义系统的NSLog,OPTIMIZE 是release 默认会加的宏
      `#ifndef OPTIMIZE

    define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), PRETTY_FUNCTION, LINE, ##VA_ARGS)

    else

    define DLog(...)

    endif`

    DLog会打印出:类名,方法名,行数

  • 相关阅读:
    alpha版本发布前的进度
    1.26~1.27
    1.23~1.25
    1月21日~1月22日工作情况
    1月17日工作情况
    1月16日小组开会
    1月15日工作进度
    1月12日~1月14日工作进度
    linux下的动态链接库管理
    小组第一次小组讨论
  • 原文地址:https://www.cnblogs.com/niit-soft-518/p/6484695.html
Copyright © 2011-2022 走看看