gpt4 book ai didi

c++ - 创建自定义#warning 标志

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:17:23 25 4
gpt4 key购买 nike

我正在构建一个商业应用程序,我们正在使用一些 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

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

我正在使用带有 gcc 或 clang 的 Objective-C++。

最佳答案

#ifdef SOME_SYMBOL
#error "foobar"
#else
#warning "foobar"
#endif

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

请注意,#error 是标准的,但#warning 是扩展。

关于c++ - 创建自定义#warning 标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4168245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com