gpt4 book ai didi

c++ - 为什么 Clang 不喜欢 __DATE__ 宏?

转载 作者:IT老高 更新时间:2023-10-28 22:00:01 27 4
gpt4 key购买 nike

我使用 __DATE__ 宏来获取编译时年份:

const QString build_year = __DATE__ + 7;

QtCreator 中的 Clang 代码模型会因使用 __DATE__ 宏而引发 -Wdate-time 警告。

警告:日期或时间宏的扩展不可重现

我可以使用 -Wno-date-time 禁用此警告,但使用 __DATE__ 有什么问题?

什么是宏的“扩展”,怎么可能是“可重现”或“不可重现”,为什么“不可重现”不好?

最佳答案

从许多角度来看,重复构建复制二进制相同的输出是可取的。从每次提供不同二进制文件的相同工具链构建相同的源代码可能会隐藏严重的问题。

如果您不需要在每次构建相同代码时生成相同的二进制文件,只需禁用该警告。这就是命令行开关存在的原因。

关于c++ - 为什么 Clang 不喜欢 __DATE__ 宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52897563/

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