Учитывая string foo
в Visual Studio, я могу разбить слова на vector
, выполнив:
vector fooVec{ istream_iterator<string>(istringstream(foo)), istream_iterator<string>() };
Но это не скомпилируется в gcc 5.1. Я получаю сообщение об ошибке:
недопустимая инициализация неконстантной ссылки типа
std::istream_iterator<std::basic_string<char> >::istream_type&
{akastd::basic_istream<char>&
} из rvalue типаstd::basic_istream<char>
Теперь я знаю, что в gcc была ошибка, которая была исправлена нашими Джонатан Уэйкли. Является ли это продолжением этой ошибки или использование здесь Rvalue istringstream
должно быть незаконным?