error C2589: “(”: “::”右边的非法标记 error C2059: 语法错误 : “::”

1. 错误输出

1>d:\system\vcpkg\installed\x64-windows\include\osgearth\math(216): error C2589: (: illegal token on right side of ::

2. 错误代码举例

result.xMin() = std::min(result.xMin(), (*itr).x());

3. 错误原因

  Vsual C++定义了min/max两个宏,这里被认为冲突。

4. 解决方案

  • 设置项目属性

    在预定义处理器中添加定义NOMINMAX来禁止使用Vsual C++的min/max宏定义:项目属性 -> C/C++ -> 预处理器 -> 预处理器定义中添加NOMINMAX。

  • 加括号

    加上括号,与Vsual C++的min/max宏定义区分开

result.xMin() = (std::min)(result.xMin(), (*itr).x());

error C2589: “(”: “::”右边的非法标记 error C2059: 语法错误 : “::”

上一篇:自定义粒度,snmp流量监控,业务突发可视化


下一篇:转账到支付宝账户快速开通指南,支付宝单笔转账72小时内开通。官方渠道操作稳定可靠