代码之家  ›  专栏  ›  技术社区  ›  Stephen Furlani

创建自定义警告标志

  •  4
  • Stephen Furlani  · 技术社区  · 14 年前

    我正在开发一个商业应用,我们正在使用一些GPL代码来帮助我们。

    我该怎么加 #warning #error 语句,以便在为调试而生成代码时发出警告,但在为释放而生成代码时抛出错误?

    我能做到:

    #warning this code is released under a CCL licensing scheme, see Source_Code_License.rtf
    #warning this code is not LGPL-compliant
    #warning this code was copied verbatim from a GP Licensed file
    

    在文件的开头,但我能做得更好吗?如果文件包括在内,是否有更好的标记方法?

    我使用的是ObjaveC++与GCC或CLAN。

    2 回复  |  直到 14 年前
        1
  •  3
  •   Hans Passant    14 年前

    改为使用#pragma消息。

        2
  •  5
  •   Roger PateRoger Pate    14 年前
    #ifdef SOME_SYMBOL
    #error "foobar"
    #else
    #warning "foobar"
    #endif
    

    NDEBUG有一个稍微不同的用途(控制assert),可能是#undef并有选择地重新定义(重新包含assert.h以影响更改),因此它可能不是正确的符号。但它是一个标准宏,可以使用。

    注意#错误是标准的,但#警告是扩展。