目前我有一个需要 C++17 的项目,因此CMakeLists.txt我很早就有这一行:
set(CMAKE_CXX_STANDARD 17)
Run Code Online (Sandbox Code Playgroud)
cmake我偶尔想从命令行 ( ) 测试该项目是否也可以使用 C++20 进行编译。(以避免意外)。
如何选择从命令行使用 C++20 进行编译?
如果我cmake -DCMAKE_CXX_STANDARD=20这样做,那么它稍后会被配置覆盖,而不是 17 被解释为最低要求。
我可以检查变量是否是预定义的以避免覆盖,但我正在寻找一种更声明的方式来指定它。
(我在 3.18 左右使用 cmake。)