我有以下代码:
std::string test("1.1");
std::pair<int, int> d;
bool r = qi::phrase_parse(
test.begin(),
test.end(),
qi::int_ >> '.' >> qi::int_,
space,
d
);
所以我试图解析字符串测试并将结果放在std :: pair d中。但是它不起作用,我怀疑它与Compound Attribute Rules。
有关有关如何使其正常工作的任何提示?
编译器错误如下:
错误:没有匹配的呼叫功能 'std :: pair :: pair(const INT&安培)'
答案 0 :(得分:21)
它应该工作。人们经常忘记的是添加
#include <boost/fusion/include/std_pair.hpp>
到他们的包含列表。这对于使std::pair
成为一名成熟的Fusion公民来说是必要的。