首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最小/最大宏处于活动状态时,OpenMesh无法编译

最小/最大宏处于活动状态时,OpenMesh无法编译
EN

Stack Overflow用户
提问于 2015-07-22 22:31:44
回答 1查看 359关注 0票数 0

如何处理此错误?我将NOMINMAX添加到预处理器定义中,但它就是不起作用。那么解决方案是什么呢?

错误如下。

代码语言:javascript
复制
ClCompile:
1>  tricall.c
1>  Detected min macro! OpenMesh does not compile with min/max macros active! Please add a define NOMINMAX to your compiler flags or add #undef min before including OpenMesh headers !
1>d:\programfiles\c_library\openmesh3.2\include\openmesh\core\system\config.h(72): fatal error C1189: #error :  min macro active
EN

回答 1

Stack Overflow用户

发布于 2015-07-22 22:39:43

您应该添加

代码语言:javascript
复制
#ifdef min
#undef min
#endif

在包含OpenMesh标头之前,max也是类似的。

一些没有遵守NOMINMAX的头部正在定义它们。

如果这破坏了依赖这些宏的其他代码,那么使用更复杂的

代码语言:javascript
复制
#ifdef min
#define foo min
#undef min
#endif
/*OpenMesh includes here*/
#ifdef foo
#define min foo
#undef foo
#endif

其中foo是你选择的一个符号。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31566170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档