Здравствуйте, jazzer, Вы писали:
J>потом скорми
Если сделать вот так:
bool parse_numbers(char const* str, vector< CMD >& v)
{
CMD tmp;
// read "cmd1 10,20,15" and store in tmp
rule<> cmd = "cmd" >> uint_p[ assign_a(tmp.CmdID) ]
>> uint_p[ assign_a(tmp.x) ] >> ','
>> uint_p[ assign_a(tmp.y) ] >> ','
>> uint_p[ assign_a(tmp.z) ];
// read "cmd1;cmd2..." and put everything to Commands
rule<> commands = list_p( cmd[ push_back_a(Commands, tmp) ] >> ';');
return parse(str, commands, space_p).full;
}
То выдает загадочную ошибку:
Error 2 error C2664: 'boost::spirit::impl::abstract_parser<ScannerT,AttrT>::do_parse_virtual' : cannot convert parameter 1 from 'const scanner_t' to 'const boost::spirit::scanner<> &' \trunk_out\.packages\win32.vc8\rootsboost\include\boost\spirit\core\non_terminal\impl\rule.ipp 190
Во всей документации не найти тривиального считывания данных в структурку.