Por ejemplo: int a = 12; cout << typeof(a) << endl; Rendimiento
Por ejemplo: int a = 12; cout << typeof(a) << endl; Rendimiento
Tome nota de las actualizaciones al final de esta publicación. Actualización: ¡he creado un proyecto público en GitHub para esta biblioteca! Me gustaría tener una plantilla única que de una vez por todas se encargue de imprimir de manera bonita todos los contenedores STL operator<<. En...
Estoy bastante familiarizado con C ++ 11 del std::thread, std::asyncy std::futurelos componentes (por ejemplo, véase esta respuesta ), que son sencillas. Sin embargo, no puedo entender qué std::promisees, qué hace y en qué situaciones se usa mejor. El documento estándar en sí no contiene mucha...
Tengo una clase template<size_t N, size_t M> class Matrix { // .... }; Quiero hacer un typedefque cree un Vector(vector de columna) que sea equivalente a a Matrixcon tamaños N y 1. Algo así: typedef Matrix<N,1> Vector<N>; Lo que produce un error de compilación. Lo siguiente...
unique_ptr<T>no permite la construcción de copias, sino que admite la semántica de movimiento. Sin embargo, puedo devolver un unique_ptr<T>de una función y asignar el valor devuelto a una variable. #include <iostream> #include <memory> using namespace
Estoy tratando de actualizar mi compilador de C ++ a C ++ 11. He buscado un poco y he llegado a la conclusión de que tengo que usar la bandera -std=c++0xo -std=gnu++0x, pero no sé muchas cosas sobre las banderas. ¿Alguien puede ayudarme? (Estoy usando Ubuntu 12.04.) Aquí está el error que obtengo...
Cuando intento ejecutar un archivo MAKE generado por CMake para compilar mi programa, aparece el error que el rango basado en bucles no se admite en el modo C ++ 98. Traté de agregar add_definitions(-std=c++0x)a mi CMakeLists.txt, pero no me ayudó. Intenté esto
На этот вопрос есть ответы en Stack Overflow en русском : Чем std :: unique_lock отличается от std :: lock_guard? Tengo dos casos de uso. A. Quiero sincronizar el acceso de dos hilos a una cola. B. Quiero sincronizar el acceso de dos subprocesos a una cola y usar una...
Me parece que tener una "función que siempre devuelve 5" es romper o diluir el significado de "llamar a una función". Debe haber una razón, o una necesidad de esta capacidad o no estaría en C ++ 11. ¿Por qué está ahí? // preprocessor. #define MEANING_OF_LIFE 42 // constants: const int...
El ejemplo común para los bucles para () basados en el rango de C ++ 11 es siempre algo simple como esto: std::vector<int> numbers = { 1, 2, 3, 4, 5, 6, 7 }; for ( auto xyz : numbers ) { std::cout << xyz << std::endl; } En cuyo caso xyzes un int. Pero, ¿qué sucede cuando...
C ++ 11 permite inline namespaces, todos los miembros de los cuales también están automáticamente en el recinto namespace. No puedo pensar en ninguna aplicación útil de esto: ¿alguien puede dar un breve y sucinto ejemplo de una situación en la que inline namespacese necesita y donde es la solución...
¿Hay un adaptador de contenedor que invierta la dirección de los iteradores para que pueda iterar sobre un contenedor en reversa con un bucle for basado en rango? Con iteradores explícitos convertiría esto: for (auto i = c.begin(); i != c.end(); ++i) { ... dentro de esto: for (auto i =...
¿Es posible que el código C ++ se ajuste tanto al estándar C ++ 03 como al estándar C ++ 11 , pero hace diferentes cosas según el estándar que se está
Estoy tratando de construir una función std::threadcon un miembro que no tome argumentos y devuelva void. No puedo entender ninguna sintaxis que funcione: el compilador se queja sin importar qué. ¿Cuál es la forma correcta de implementar spawn()para que devuelva un std::threadque se ejecuta...
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); Muchas publicaciones de google y stackoverflow están ahí, pero no puedo entender por qué make_sharedes más eficiente que usarlo directamente shared_ptr. ¿Alguien puede...
Recientemente me encontré con el siguiente código esotérico. int main(){(([](){})());} Vuelva a formatearlo de la siguiente manera para que sea más legible: int main(){ (([](){})()); // Um... what?!?! } Pero no puedo entender cómo (([](){})())es el código válido. No se parece a la sintaxis...
Cuando una función toma un shared_ptr(de boost o C ++ 11 STL), lo está pasando: por referencia constante: void foo(const shared_ptr<T>& p) o por valor void foo(shared_ptr<T> p):? Preferiría el primer método porque sospecho que sería más rápido. ¿Pero realmente vale la pena o hay...
No estoy haciendo esta pregunta debido a los méritos de la recolección de basura en primer lugar. Mi razón principal para preguntar esto es que sé que Bjarne Stroustrup ha dicho que C ++ tendrá un recolector de basura en algún momento. Dicho esto, ¿por qué no se ha agregado? Ya hay algunos...
Comencé a estudiar punteros inteligentes de C ++ 11 y no veo ningún uso útil de std::weak_ptr. ¿Alguien puede decirme cuándo std::weak_ptres útil /