&&rv)
{
for (const _type& value : rv)
lv << value << ' ';
return lv;
}
int main(int, char**)
{
std::cout << { 1, 2, 3, 4, 5 } << std::endl;
}
Почему это не работает? В этом случае { 1, 2, 3, 4, 5 } это prvalue чтоль?
Оно-то prvalue, но да и что? Судя по ошибке, это прямо запрещено стандартом. Я, правда, не нашёл
Блин, а можно было бы класные вещи делать. Напиши, если найдёшь почему нельзя.
зато можно так for (const auto& value: { 1, 2, 3, 4, 5 }) { std::cout << value << ' '; }
Обсуждают сегодня