C++ boost hana定义结构的编译错误

C++ boost hana定义结构的编译错误,c++,c++14,boost-hana,C++,C++14,Boost Hana,我从boost hana开始,目前在编写基本程序时遇到了这个编译问题: #include <boost/hana/define_struct.hpp> namespace hana = boost::hana; struct Foo { BOOST_HANA_DEFINE_STRUCT(Foo, (int, var1_), (double, var2), ); }; 这很奇怪,因为当我查看标题时,boost/hana/detail/prepr

我从boost hana开始,目前在编写基本程序时遇到了这个编译问题:

#include <boost/hana/define_struct.hpp>

namespace hana = boost::hana;
struct Foo
{
    BOOST_HANA_DEFINE_STRUCT(Foo,
     (int, var1_),
     (double, var2),
     );
};
这很奇怪,因为当我查看标题时,
boost/hana/detail/preprocessor.hpp
(上面的
struct\u macros.hpp
)包含了这个宏定义

编辑:宏太可怕了(看看第一个答案。

应该是:

struct Foo
{
    BOOST_HANA_DEFINE_STRUCT(Foo,
     (int, var1_),
     (double, var2) // no comma
     );
};
struct Foo
{
    BOOST_HANA_DEFINE_STRUCT(Foo,
     (int, var1_),
     (double, var2) // no comma
     );
};