为什么在编译时收到BOOST_PARAMETER_MAX_ARITY重新定义的警告?

时间:2019-04-17 16:29:35

标签: cgal

当我尝试编译我的cgal程序时,我得到警告include/CGAL/config.h:119: warning: "BOOST_PARAMETER_MAX_ARITY" redefined #define BOOST_PARAMETER_MAX_ARITY 12

是因为我在boost之前如何包含cgal标头?

到目前为止,我所看到的是 我可以看到include/CGAL/config.h文件定义了BOOST_PARAMETER_MAX_ARITY 因为#define BOOST_PARAMETER_MAX_ARITY 12 boost也有自己的config.h,它也将BOOST_PARAMETER_MAX_ARITY定义为8。

我正在使用CGAL-4.13和boost-1.68.0

1 个答案:

答案 0 :(得分:0)

CGAL 3D网格划分器正在使用Boost参数,并且此库要求定义宏以获取最大数量的参数。在CGAL中,您至少需要12个。如果出现此错误消息,则意味着在包含CGAL标头config.h之前已包含了boost参数。一种解决方案是,在包含boost(或包含它的另一个标头)之前,在编译单元中将自己定义为12的宏,或者首先包含CGAL配置文件。

相关问题