<语言>_STANDARD_REQUIRED

变化是:

这些属性指定 <LANG>_STANDARD 的值是否是必需的。当为 false 或未设置时, <LANG>_STANDARD 目标属性被视为可选的,并且如果请求的标准不可用,则可能会“退化”到以前的标准。当``<LANG>_STANDARD_REQUIRED`` 设置为 true 时, <LANG>_STANDARD 成为硬性要求,如果无法满足该要求,将发出致命错误。

请注意,实际使用的语言标准可能高于 <LANG>_STANDARD 指定的标准,无论 <LANG>_STANDARD_REQUIRED 的值如何。特别是, transitive usage requirements 或使用:manual:compile features <cmake-compile-features(7)> 可以将所需的语言标准提高到 < LANG>_STANDARD 指定。

这些属性由 CMAKE_<LANG>_STANDARD_REQUIRED 变量的值初始化,如果它是在创建目标时设置的。

有关编译功能的信息和支持的编译器列表,请参阅 cmake-compile-features(7) 手册。