2014-02-22 146 views
1
#include <iostream> 
#include <boost/spirit/include/qi.hpp> 

namespace qi = boost::spirit::qi; 
int main() 
{ 
    std::string input(" aaa "); 
    std::string::iterator strbegin = input.begin(); 
    std::string p; 
    qi::phrase_parse(strbegin, input.end(), 
      qi::lexeme[+qi::char_], 
      qi::space,     
      p);        

    std::cout << p << std::endl; 
    std::cout << p.size() << std::endl; 
} 

在此代碼解析器中將"aaa "指定爲p。爲什麼不跳過所有空格?我預計p"aaa"。如何修復?讓Boost.Spirit解析器跳過所有空格

回答