Pytania oznaczone «move-semantics»

1701
Co to jest semantyka ruchu?

Właśnie skończyłem słuchać wywiadu radiowego podcastu Software Engineering ze Scottem Meyersem na temat C ++ 0x . Większość nowych funkcji ma dla mnie sens i jestem podekscytowany C ++ 0x, z wyjątkiem jednej. Nadal nie dostaję semantyki ruchu ... Co to dokładnie

761
push_back vs Situace_back

Jestem trochę zdezorientowany co do różnicy między push_backi emplace_back. void emplace_back(Type&& _Val); void push_back(const Type& _Val); void push_back(Type&& _Val); Ponieważ istnieje push_backprzeciążenie przyjmujące odwołanie do wartości, nie bardzo rozumiem, jaki jest...

127
Kiedy uczynić typ nieruchomym w C ++ 11?

Byłem zaskoczony, że to nie pojawiło się w moich wynikach wyszukiwania, pomyślałem, że ktoś by zapytał o to wcześniej, biorąc pod uwagę użyteczność semantyki ruchu w C ++ 11: Kiedy muszę (lub czy jest to dobry pomysł) uczynić klasę nieruchomą w C ++ 11? ( To znaczy przyczyny inne niż problemy ze...

98
Dlaczego kopiujemy, a potem przenosimy?

Widziałem gdzieś kod, w którym ktoś zdecydował się skopiować obiekt, a następnie przenieść go do członka danych klasy. Wprawiło mnie to w zakłopotanie, ponieważ myślałem, że celem przeniesienia jest uniknięcie kopiowania. Oto przykład: struct S { S(std::string str) : data(std::move(str))...