Preguntas etiquetadas con c++11

101
¿Puedo implementar un tipo de miembro autónomo en C ++?

C ++ carece del equivalente de la selfpalabra clave de PHP , que se evalúa según el tipo de la clase adjunta. Es bastante fácil fingirlo por clase: struct Foo { typedef Foo self; }; pero tuve que escribir de Foonuevo. Tal vez algún día me equivoque y cause un error silencioso. ¿Puedo usar...

100
Compilar hash de cadena de tiempo

He leído en algunos lugares diferentes que usando los nuevos literales de cadena de C ++ 11 podría ser posible calcular el hash de una cadena en tiempo de compilación. Sin embargo, nadie parece estar dispuesto a salir y decir que será posible o cómo se hará. es posible? ¿Cómo se vería el...

100
Diferencia entre std :: result_of y decltype

Tengo algunos problemas para comprender la necesidad de std::result_ofC ++ 0x. Si he entendido bien, result_ofse usa para obtener el tipo resultante de invocar un objeto de función con ciertos tipos de parámetros. Por ejemplo: template <typename F, typename Arg> typename

99
¿Función de secuencia-zip para c ++ 11?

Con el nuevo bucle for basado en rangos podemos escribir código como for(auto x: Y) {} Qué IMO es una gran mejora de (por ejemplo) for(std::vector<int>::iterator x=Y.begin(); x!=Y.end(); ++x) {} ¿Se puede usar para recorrer dos bucles simultáneos, como la zipfunción Pythons ? Para...

98
¿Cómo se implementa la función std ::?

De acuerdo con las fuentes que he encontrado, una expresión lambda es esencialmente implementada por el compilador creando una clase con el operador de llamada de función sobrecargado y las variables referenciadas como miembros. Esto sugiere que el tamaño de las expresiones lambda varía, y dadas...

98
¿Forma moderna de filtrar el contenedor STL?

Volviendo a C ++ después de años de C #, me preguntaba cuál sería la forma moderna (léase: C ++ 11) de filtrar una matriz, es decir, cómo podemos lograr algo similar a esta consulta de Linq: var filteredElements = elements.Where(elm => elm.filterProperty == true); ¿Para filtrar un vector...

98
¿Por qué copiamos y luego nos movemos?

Vi código en algún lugar en el que alguien decidió copiar un objeto y luego moverlo a un miembro de datos de una clase. Esto me dejó confuso porque pensé que el objetivo de mudarse era evitar copiar. Aquí está el ejemplo: struct S { S(std::string str) : data(std::move(str)) {} }; Aquí están...

97
¿Cómo puedo pasar std :: unique_ptr a una función?

¿Cómo puedo pasar una std::unique_ptra una función? Digamos que tengo la siguiente clase: class A { public: A(int val) { _val = val; } int GetVal() { return _val; } private: int _val; }; Lo siguiente no se compila: void MyFunc(unique_ptr<A> arg) { cout << arg->GetVal()...