Resultados de la búsqueda a petición "c++"

6 la respuesta

¿Cómo busca en una cadena estándar std :: una subcadena en C ++?

Estoy tratando de analizar una cadena simple en C ++. Sé que la cadena contiene texto con dos puntos, seguido inmediatamente por un espacio, luego un número. Me gustaría extraer solo la parte del número de la cadena. No puedo ...

2 la respuesta

Inicializando un constexpr con un const, - int vs float

Me pregunto por qué el enteroii se inicia en tiempo de compilación, pero no el flotadorff aquí: int main() { const int i = 1; constexpr int ii = i; const float f = 1.0; constexpr float ff = f; }Esto es lo que sucede cuando intento compilar: > ...

1 la respuesta

¿Se puede declarar una matriz con un tamaño que sea una variable constante y no una constexpr?

¿Es correcto este código C ++? const size_t tabsize = 50; int tab[tabsize];El problema es que ya he visto numerosas opiniones contradictorias al respecto. Incluso las personas en el canal ## c ++ IRC y en los foros de programación afirman cosas ...

2 la respuesta

¿El uso de una lambda en los archivos de encabezado puede violar el ODR?

¿Se puede escribir lo siguiente en un archivo de encabezado: inline void f () { std::function<void ()> func = [] {}; }o class C { std::function<void ()> func = [] {}; C () {} };Supongo que en cada archivo fuente, el tipo de lambda puede ser ...

4 la respuesta

Funciones de clase privada frente a funciones en un espacio de nombres sin nombre

Me he dado cuenta de que tiendo a no tener funciones de clase privada. Si es posible, todos los candidatos a la clase privada funcionan en lugar de ponerlos en un espacio de nombres sin nombre y pasar toda la información necesaria como parámetros ...

1 la respuesta

¿Por qué MSVC elige un largo largo como el tipo para -2147483648?

Mi fragmento: auto i = -2147483648; int j = 3; std::swap(i, j); // Compile error about mismatched types here.El compilador afirma que el literali es unlong long. ¿Porqué es eso? -2147483648 cabe en unint en MSVC x64. Mi compilador es MSVC, el ...

1 la respuesta

Utilice el argumento de clase de plantilla de plantilla como parámetro

El diseño moderno de C ++ da el siguiente ejemplo: template <class T> struct EnsureNotNull { static void Check(T*& ptr) { if (!ptr) ptr = GetDefaultValue(); } }; template < class T, template <class> class CheckingPolicy = EnsureNotNull, template ...

2 la respuesta

Momento de los guardias de bloqueo basados en el alcance y los valores de retorno

class C { mutable std::mutex _lock; map<string,string> deep_member; public: auto get_big_lump() { std::unique_lock<std::mutex> lock(_lock); // establish scope guard return deep_member; // copy the stuff while it can't be changed on ...

5 la respuesta

tamaño del vector: 1 cuando el tamaño es 0 en C ++

El siguiente código #include <vector> #include <iostream> using namespace std; int main() { vector<int> value; cout << value.size() << endl; // output 0 cout << value.size() - 1 << endl; // output 18446744073709551615 }¿Por qué la segunda salida ...

1 la respuesta

SystemParametersInfo establece el fondo de pantalla completamente en negro (usando SPI_SETDESKWALLPAPER)

Intento cambiar mi fondo de escritorio. Funciona bien cuando lo uso así: SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "C:\\1.jpg", SPIF_SENDCHANGE);Pero cuando lo uso así, el fondo de escritorio se establece completamente en negro: std::string ...