Domande taggate «push-back»


2
Efficienza di C ++ 11 push_back () con std :: move rispetto a emplace_back () per oggetti già costruiti
In C ++ 11 emplace_back()è generalmente preferito (in termini di efficienza) in push_back()quanto consente la costruzione sul posto, ma è ancora così quando si utilizzapush_back(std::move()) con un oggetto già costruito? Ad esempio, è emplace_back()ancora preferito in casi come i seguenti? std::string mystring("hello world"); std::vector<std::string> myvector; myvector.emplace_back(mystring); myvector.push_back(std::move(mystring)); // (of course …

2
Strano comportamento con i campi di classe quando si aggiunge a uno std :: vector
Ho trovato un comportamento molto strano (su clang e GCC) nella seguente situazione. Ho un vettore, nodescon un elemento, un'istanza di classe Node. Quindi chiamo una funzione nodes[0]che aggiunge una nuova Nodeal vettore. Quando viene aggiunto il nuovo nodo, i campi dell'oggetto chiamante vengono resettati! Tuttavia, sembrano tornare alla normalità …
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.