Visual Studio 2019 CMake项目gcd未定义且找不到Configuration Properties怎么办
问题解决方案
一、std::gcd未定义问题修复
std::gcd是C17版本才正式纳入标准库<numeric>头的特性,你的项目当前默认使用的C标准版本低于17,因此头文件中没有对应函数定义,IDE提示的添加namespace std的修复建议属于误报,和命名空间声明无关。
CMake项目需要通过修改配置文件指定C++标准,操作步骤如下:
- 打开项目根目录下的
CMakeLists.txt文件 - 在
project(你的项目名称)配置行下方,添加以下3行配置:
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF)
- 保存文件后,右键解决方案资源管理器中的项目根节点,选择「生成缓存」,等待CMake重新加载配置完成后,
gcd未定义的报错就会消失
如果需要使用更高版本的C特性,也可以将上述配置中的17替换为20,Visual Studio 2019最高支持到C20标准
二、属性页空白问题说明
你创建的是CMake类型的C++项目,本身不支持传统MSBuild项目的「Configuration Properties」图形配置界面,右键点击项目弹出空白属性窗口属于正常现象,所有项目编译配置都需要通过以下两种方式修改:
- 直接编辑项目根目录下的
CMakeLists.txt文件手动写配置 - 点击顶部菜单栏「项目」→「CMake设置 for 你的项目名」,打开可视化配置界面调整参数,修改后保存会自动同步到CMake配置中
内容的提问来源于stack exchange,提问作者Scorpia
相关产品推荐
相关产品推荐

