C++ 如何在boost::spirit规则中使用boost::tuple作为属性?
我在C++ 如何在boost::spirit规则中使用boost::tuple作为属性?,c++,boost,boost-spirit,boost-spirit-qi,C++,Boost,Boost Spirit,Boost Spirit Qi,我在boost::spirit中有以下规则: typedef boost::tuple<int, int> Entry; qi::rule<Iterator, Entry(), Skipper> entry; entry = qi::int_ >> qi::int_; 为了让Spirit将boost::tuple识别为有效的融合序列,您需要包含一个额外的头: #include <boost/fusion/include/boost_tuple.hpp&
boost::spirit
中有以下规则:
typedef boost::tuple<int, int> Entry;
qi::rule<Iterator, Entry(), Skipper> entry;
entry = qi::int_ >> qi::int_;
为了让Spirit将
boost::tuple
识别为有效的融合序列,您需要包含一个额外的头:
#include <boost/fusion/include/boost_tuple.hpp>
#包括
这在文档中有点松散地暗示。您缺少一个关键的include--
boost/fusion/include/boost\u tuple.hpp
。啊,这是有道理的。它就像boost/fusion/include/std\u pair.hpp
。如果你把你的评论写进正确的答案,我会接受你的正确答案。
#include <boost/fusion/include/boost_tuple.hpp>