RU

Move‑семантика в C++: пять задач, в которых легко ошибиться

В C++ часть ошибок выглядит слишком безобидно, чтобы сразу насторожиться: std::move в return , emplace_back «для скорости», перемещение из const …

move-семантикаNRVOcopy elisionself-move-assignmentemplace_backpush_backnoexceptуправление памятьювремя жизни объектов
Habr
RU

Лямбды в C++: пять задач на захваты и время жизни, в которых ошибается даже опытный разработчик

Лямбды в C++ выглядят безобидно, пока не начинают жить дольше переменных, которые захватили. Висячие ссылки, мёртвый this , копии состояния …

лямбды C++захваты в лямбдахвремя жизни объектовundefined behaviorthis в C++dangling referenceуправление памятьюRAII