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

Сообщение Re: Awaiting Review от 12.02.2019 12:08

Изменено 12.02.2019 12:09 watchmaker

Re: Awaiting Review
Здравствуйте, malegkin, Вы писали:

M>Волнует в первую очередь move semantics / передача и возврат объектов между функциями.

С этим тут плохо.
Простой return out; и короче записывается и работать будет быстрее.
А return std::move( out ); — это пессимизация.

Код вида return std::move(something) нужен совсем в других ситуациях, например во всяки string_builder'ах:
S&& append(S&& obj, const T& diff) {
  obj.apply(diff);
  return std::move(obj);
}
Re: Awaiting Review
Здравствуйте, malegkin, Вы писали:

M>Волнует в первую очередь move semantics / передача и возврат объектов между функциями.

С этим тут плохо.
Простой return out; и короче записывается и работать будет быстрее.
А return std::move( out ); — это пессимизация.

Код вида return std::move(something) нужен совсем в других ситуациях (очень редких), например во всяких string_builder'ах:
S&& append(S&& obj, const T& diff) {
  obj.apply(diff);
  return std::move(obj);
}