Preguntas etiquetadas con c++

C ++ es un lenguaje de programación de propósito general. Originalmente fue diseñado como una extensión de C y tiene una sintaxis similar, pero ahora es un lenguaje completamente diferente. Use esta etiqueta para preguntas sobre el código (que se compilará) con un compilador de C ++. Utilice una etiqueta específica de la versión para preguntas relacionadas con una revisión estándar específica [C ++ 11], [C ++ 14], [C ++ 17] o [C ++ 20], etc.



4
punteros inteligentes (impulso) explicados
¿Cuál es la diferencia entre el siguiente conjunto de punteros? ¿Cuándo utiliza cada puntero en el código de producción, si es que lo hace? ¡Los ejemplos serían apreciados! scoped_ptr shared_ptr weak_ptr intrusive_ptr ¿Usas boost en el código de producción?

5
¿Cómo agrego un enlazador o una marca de compilación en un archivo CMake?
Estoy usando el arm-linux-androideabi-g++compilador. Cuando trato de compilar un simple "¡Hola, mundo!" programa se compila bien. Cuando lo pruebo agregando un manejo de excepciones simple en ese código, también funciona (después de agregar -fexceptions... Supongo que está deshabilitado por defecto). Esto es para un dispositivo Android, y solo quiero usar …
220 c++  cmake 



14
Cómo usar enumeraciones en C ++
Supongamos que tenemos enumlo siguiente: enum Days {Saturday, Sunday, Tuesday, Wednesday, Thursday, Friday}; Quiero crear una instancia de esto enume inicializarlo con un valor adecuado, así que hago: Days day = Days.Saturday; Ahora quiero verificar mi variable o instancia con un enumvalor existente , así que hago: if (day == …
218 c++  enums 

3
¿Por qué la transposición de una matriz de 512x512 es mucho más lenta que la transposición de una matriz de 513x513?
Después de realizar algunos experimentos en matrices cuadradas de diferentes tamaños, surgió un patrón. Invariablemente, la transposición de una matriz de tamaño 2^nes más lenta que la transposición de una de tamaño2^n+1 . Para valores pequeños de n, la diferencia no es mayor. Sin embargo, se producen grandes diferencias sobre …

2
¿Por qué no puedo retroceder un_ptr_unico en un vector?
¿Qué tiene de malo este programa? #include <memory> #include <vector> int main() { std::vector<std::unique_ptr<int>> vec; int x(1); std::unique_ptr<int> ptr2x(&x); vec.push_back(ptr2x); //This tiny command has a vicious error. return 0; } El error: In file included from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/mingw32/bits/c++allocator.h:34:0, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/allocator.h:48, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/memory:64, from main.cpp:6: c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/unique_ptr.h: In member function 'void __gnu_cxx::new_allocator<_Tp>::construct(_Tp*, const …



3
¿Por qué las definiciones de puntero de función funcionan con cualquier cantidad de símbolos '&' o asteriscos '*'?
¿Por qué funciona lo siguiente? void foo() { cout << "Foo to you too!\n"; }; int main() { void (*p1_foo)() = foo; void (*p2_foo)() = *foo; void (*p3_foo)() = &foo; void (*p4_foo)() = *&foo; void (*p5_foo)() = &*foo; void (*p6_foo)() = **foo; void (*p7_foo)() = **********************foo; (*p1_foo)(); (*p2_foo)(); (*p3_foo)(); (*p4_foo)(); …
216 c++  c  function-pointers 

15
C ++ ordenar y hacer un seguimiento de los índices
Usando C ++, y con suerte la biblioteca estándar, quiero ordenar una secuencia de muestras en orden ascendente, pero también quiero recordar los índices originales de las nuevas muestras. Por ejemplo, tengo un conjunto, o vector, o matriz de muestras A : [5, 2, 1, 4, 3]. Quiero ordenarlos para …
216 c++  sorting  stl  indexing 

6
make_unique y reenvío perfecto
¿Por qué no hay std::make_uniqueuna plantilla de función en la biblioteca estándar de C ++ 11? Encuentro std::unique_ptr<SomeUserDefinedType> p(new SomeUserDefinedType(1, 2, 3)); Un poco detallado. ¿No sería mucho mejor lo siguiente? auto p = std::make_unique<SomeUserDefinedType>(1, 2, 3); Esto oculta newmuy bien y solo menciona el tipo una vez. De todos …


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.