vs2019中使用ceres2.0.0遇到 错误 C3861 “M_2_SQRTPI”: 找不到标识符

vs2019中使用ceres2.0.0 “M_2_SQRTPI”: 找不到标识符

错误信息

错误 C3861 “M_2_SQRTPI”: 找不到标识符 D:\Libs\ceres\install\include\ceres\jet.h 583

问题触发条件(错误原因)

  1. 使用ceres2.0.0
  2. vs2019新建的项目中默认开启了标准符合性选项,此时
  3. M_2_SQRTPI不是标准C、C++的常量,所以在jet.h中仅仅包含cmath是不够的,还需要定义一个宏_USE_MATH_DEFINES才能使用M_2_SQRTPI

解决方法(二选一)

  1. 关闭标准符合性或者符合模式选项,即设置为
    vs2019中使用ceres2.0.0遇到 错误 C3861	“M_2_SQRTPI”: 找不到标识符

  2. 在属性->预处理器下添加宏_USE_MATH_DEFINESvs2019中使用ceres2.0.0遇到 错误 C3861	“M_2_SQRTPI”: 找不到标识符

参考1
参考2

上一篇:解决:错误的语法:”XXXX“必须是批处理中仅有的语句


下一篇:ceres for Android 太慢的解决方法