return-value-optimization

¿Qué son copy elision y return value optimization?

¿Qué es copy elision? Qué es (named) return value optimization? ¿Qué implican? ¿En qué situaciones pueden ocurrir? ¿Qué so ... mente esté buscando la introducción. Para una descripción técnica, ver la referencia estándar. Véase casos comunes aquí .

¿c++11 Devuelve optimización de valor o mover? [duplicar]

Esta pregunta ya tiene una respuesta aquí: C++11 rvalues and move semantics confusion (return statement) ... SerialBuffer buffer( size ); read( begin( buffer ), end( buffer ) ); return move( buffer ); } ¿Cuál debo usar?

En C++, ¿sigue siendo una mala práctica devolver un vector de una función?

Versión corta: Es común devolver objetos grandes, como vectores/matrices, en muchos lenguajes de programación. ¿Es este esti ... esultado, la primera forma fue un olor de código importante en la programación en C++ durante mucho tiempo. Espero que ya no.

Optimización del valor de retorno y copia elision en C

Algunas personas no son conscientes de que es posible pasar y devolver estructuras por valor en C. Mi pregunta es sobre el co ... rar la salida del ensamblado para ver lo que hace el compilador, pero creo que esta es una pregunta interesante, sin embargo.

Forma correcta (mover semántica) de devolver un std:: vector de una función que llama en C++11

Quiero llenar std:: vector (o algún otro contenedor STL): class Foo { public: Foo(int _n, const Bar &_m); private: ... mer ejemplo con C++0x (mover características semánticas, etc.) para evitar la copia redundante y las llamadas al constructor?

¿Por qué devolver un std:: opcional a veces se mueve y a veces se copia?

Vea el siguiente ejemplo de devolver una opción de UserName - una clase movible/copiable. std::optional<UserName> Crea ... tr<int> foo() { std::unique_ptr<int> p; return {p}; // uses copy of unique_ptr and so it breaks... }