perfect-forwarding

hacer un reenvío único y perfecto

¿Por qué no hay una plantilla de función std::make_unique en la biblioteca estándar de C++11? Me parece std::unique_ptr< ... y seguro de si es correcto. Es? ¿Qué significa exactamente std::forward<Args>(args)...? ¿Qué hace el compilador de eso?

¿Todas / la mayoría de las funciones de setter en C++11 deben escribirse como plantillas de función que acepten referencias universales?

Considere una clase X con variables miembro N, cada uno de algunos tipos copiablesy móviles, y N funciones de setter corres ... hipotético"escribir funciones setter como plantillas de función que acepten referencias universales siempre que sea posible"?

¿Puedo usar normalmente / siempre std:: forward en lugar de std:: move?

He estado viendo la charla de Scott Meyers sobre Referencias Universales de la conferencia de C++ y más allá de 2012, y tod ... ::move: void doWork(Widget&& param) // move { // ops and exprs using std::forward<Widget>(param) }

Captura de variables perfectamente reenviadas en lambda

template<typename T> void doSomething(T&& mStuff) { auto lambda([&mStuff]{ doStuff(std::forward<T> ... ara variables perfectamente reenviadas? EDIT: ¿Qué pasa si la variable perfectamente reenviada es un paquete de parámetros?

¿Por qué utilizar un valor perfectamente reenviado (un funtor)?

C++11 (y C++14) introduce construcciones de lenguaje adicionales y mejoras que se dirigen a la programación genérica. Estos i ... f en apply_impl, es decir, por qué std::forward<F>(f)(std::get...? ¿Por qué no aplicar la función como f(std::get...?

¿Qué tan útil sería Heredar Constructores en C++?

Mientras me siento en las reuniones del comité de Estándares de C++, están discutiendo los pros y los contras de eliminar He ... azón técnica que se le ocurra que impida que los "constructores de reenvío perfecto" sean una alternativa adecuada? Gracias!

Reenvío de valores devueltos. ¿Es necesario std:: forward?

Estoy escribiendo biblioteca que envuelve una gran cantidad de funciones y métodos de otra biblioteca. Para evitar hacer fre ... ento de UB en: auto&& tmp = wrapper(42); No prueba nada de causa porque es comportamiento indefinido (si es UB).

¿Hay alguna diferencia entre referencias universales y referencias de reenvío?

Un argumento para esta función se enlazará a una referencia rvalue: void f(int && i); Sin embargo, un argumento p ... erencia de reenvío. ¿Significan lo mismo? ¿Es solo una referencia de reenvío si el cuerpo de la función llama a std::forward?