在下面的代碼中,我嘗試使用Boost Spirit Auto Parser作爲一個或兩個雙精度值,但它不能編譯。我在這裏做錯了什麼?Boost Spirit自動解析器不能執行雙元組操作
// file main.cpp
#include <boost/tuple/tuple.hpp>
#include <boost/spirit/include/qi.hpp>
namespace qi = boost::spirit::qi;
int main()
{
boost::tuple<double, double> p;
char* i = 0;
qi::phrase_parse(i, i, p, qi::space);
// qi::phrase_parse(i, i, qi::double_ >> qi::double_, qi::space, qi::skip_flag::postskip, p);
return 0;
}
的註釋行編譯,所以它接受boost::tuple<double, double>
作爲屬性類型的qi::double_ >> qi::double_
;但它無法從屬性類型獲取解析器。爲什麼?