Информация об изменениях

Сообщение Re[12]: про перемещение вопрос от 20.05.2019 18:45

Изменено 20.05.2019 18:57 rg45

Re[12]: про перемещение вопрос
Здравствуйте, B0FEE664, Вы писали:

R>>Эта функция ничего тебе не обещает сверх того, что заложено в ее семантике. Вот если бы она называлась move или swap, тогда другое дело.

BFE>В том-то и дело, что в вызове я вижу семантику перемещениям (std::move как бы намекает), поэтому я ожидаю, что это и есть перемещение, а не что-то ещё.

А чего ты ждешь, например, от перемещающего оператора присваивания std::vector? Если также гарантированного перемещения, то совершенно напрасно — все, чего требует стандарт — это оставить объект "in valid but unspecified state". И если ты полистаешь стандарт, то увидишь, что это не какой-то исключительный случай, а широко распространенная практика. Этому в стандарте посвящено даже несколько отдельных параграфов.
Re[12]: про перемещение вопрос
Здравствуйте, B0FEE664, Вы писали:

R>>Эта функция ничего тебе не обещает сверх того, что заложено в ее семантике. Вот если бы она называлась move или swap, тогда другое дело.

BFE>В том-то и дело, что в вызове я вижу семантику перемещениям (std::move как бы намекает), поэтому я ожидаю, что это и есть перемещение, а не что-то ещё.

А чего ты ждешь, например, от перемещающего оператора присваивания std::vector? Если также гарантированного перемещения, то совершенно напрасно — все, чего требует стандарт — это оставить объект "in valid but unspecified state". И если ты полистаешь стандарт, то увидишь, что это не какой-то исключительный случай, а обычная практика. Этому в стандарте посвящено даже несколько отдельных параграфов.