Preguntas etiquetadas con c++11

129
¿Por qué funciona std :: shared_ptr <void>?

Encontré algo de código usando std :: shared_ptr para realizar una limpieza arbitraria al apagar. Al principio pensé que este código no podría funcionar, pero luego intenté lo siguiente: #include <memory> #include <iostream> #include <vector> class test { public: test() {...

128
operador de flecha (->) en el encabezado de la función

Encontré el siguiente código: template <typename T, typename T1> auto compose(T a, T1 b) -> decltype(a + b) { return a+b; } Hay una cosa que no puedo entender: ¿Dónde podría averiguar qué significa el operador de flecha ( ->) en el encabezado de la función? Supongo, lógicamente, que el...

127
¿Cuándo hacer un tipo no movible en C ++ 11?

Me sorprendió que esto no apareciera en mis resultados de búsqueda, pensé que alguien habría preguntado esto antes, dada la utilidad de la semántica de movimiento en C ++ 11: ¿Cuándo debo (o es una buena idea para mí) hacer una clase no movible en C ++ 11? (Razones otros de los problemas de...

124
¿Es 1.0 una salida válida de std :: generate_canonical?

Siempre pensé que los números aleatorios estarían entre cero y uno, sin ellos1 , es decir, son números del intervalo medio abierto [0,1]. La documentación en cppreference.com de std::generate_canonicalconfirma esto. Sin embargo, cuando ejecuto el siguiente programa: #include...

124
¿C ++ 11 lambdas capturan variables que no usan?

Cuando uso [=]para indicar que me gustaría que todas las variables locales sean capturadas por valor en una lambda, ¿eso dará como resultado que se copien todas las variables locales en la función, o solo todas las variables locales que son utilizadas por la lambda ? Entonces, por ejemplo, si...

121
error: uso de función eliminada

He estado trabajando en un código C ++ que ha escrito un amigo y obtengo el siguiente error que nunca antes había visto al compilar con gcc4.6: error: use of deleted function ‘GameFSM_<std::array<C, 2ul> >::hdealt::hdealt()’ is implicitly deleted because the default definition would...

120
¿Cómo funciona std :: tie?

Lo he usado std::tiesin pensarlo mucho. Funciona, así que acabo de aceptar que: auto test() { int a, b; std::tie(a, b) = std::make_tuple(2, 3); // a is now 2, b is now 3 return a + b; // 5 } Pero, ¿cómo funciona esta magia negra ? ¿Cómo se crea un temporal por std::tiecambio ay b? Encuentro...

118
inicializar un vector a ceros C ++ / C ++ 11

Sé que en C ++ 11 agregaron la función para inicializar una variable a cero como tal double number = {}; // number = 0 int data{}; // data = 0 ¿Existe una forma similar de inicializar un std::vectorde una longitud fija a todos los