Co mówi nam auto &&?
Jeśli czytasz kod jak
auto&& var = foo();
gdziefoo
to dowolna funkcja zwracająca wartość typuT
. Następnievar
jest lwartością odniesienia typu rvalue doT
. Ale co to oznaczavar
? Czy to znaczy, że możemy ukraść zasobyvar
? Czy istnieją uzasadnione sytuacje, w których powinieneś użyćauto&&
powiedzieć czytelnikowi o swoim kodzie coś takiego jak ty, kiedy wróciszunique_ptr<>
powiedzieć, że masz wyłączną własność? A na przykładT&&
gdyT
jest typu klasowego?
Chcę tylko zrozumieć, czy istnieją inne przypadki użyciaauto&&
niż w programowaniu szablonów; jak te omówione w przykładach w tym artykuleOdniesienia uniwersalne Scott Meyers.