Articles of g ++

Lista de técnicas comunes de optimización de C ++

¿Puedo tener una gran lista de prácticas comunes de optimización de C ++? Lo que quiero decir con la optimización es que tiene que modificar el código fuente para poder ejecutar un progtwig más rápido, sin cambiar la configuración del comstackdor.

Falta incluir “bits / c ++ config.h” al comstackr de forma cruzada progtwig de 64 bits en 32 bits en Ubuntu

Estoy ejecutando la versión de 32 bits de Ubuntu 10.10 y tratando de realizar una comstackción cruzada con un objective de 64 bits. Basado en mi investigación, he instalado el paquete g ++ – multilib. El progtwig es un mundo de hola muy simple: #include int main( int argc, char** argv ) { std::cout << […]

¿Cómo ver qué banderas -march = native se activarán?

Estoy comstackndo mi aplicación C ++ usando GCC 4.3. En lugar de seleccionar manualmente los indicadores de optimización, estoy usando -march=native , que en teoría debería agregar todos los indicadores de optimización aplicables al hardware en el que estoy comstackndo. ¿Pero cómo puedo verificar qué banderas está usando en realidad?

g ++ matriz de tamaño variable sin advertencia?

int a; cin >> a; int ints[a]; ¿Por qué esto no arroja ningún tipo de advertencia durante la comstackción? ¿Cómo puedo saber cuándo esta matriz está usando realmente el montón o la stack? g++ -std=c++11 -Wall *.cpp -o main

boost spirit V2 qi error asociado con el nivel de optimización

Desarrollo mi código en mi tiempo libre. Preferiblemente en modo de depuración. Recientemente, cuando intenté construir la versión de lanzamiento, obtuve el error (tiempo de ejecución, salida: 1\n2\n luego fallo). Localicé el fragmento de código (a continuación), que contiene el error, y encontré que el error solo ocurre cuando el nivel de optimización es -Os, […]

¿Puedo hacer que GCC advierta sobre pasar tipos demasiado amplios a las funciones?

Lo siguiente es un código obviamente defectuoso para el cual creo que el comstackdor debería emitir un diagnóstico. Pero ni gcc ni g++ hacen, incluso con todas las opciones de advertencia que pude pensar: -pedantic -Wall -Wextra #include short f(short x) { return x; } int main() { long x = 0x10000007; /* bigger than […]

g ++ “llamar” una función sin paréntesis (no f () sino f;). ¿Por qué siempre devuelve 1?

En c ++ (GNU GCC g ++), mi código está “llamando” a una función sin (). La función no funciona, pero comstack bien. Más sorprendentemente, el código siempre devuelve 1 … ¿Hay alguna explicación? Esperaba que el nombre de la función fuera solo un puntero regular, pero parece que es un poco diferente … ¿Obtuve […]

cygwin g ++ std :: stoi “error: ‘stoi’ no es miembro de ‘std

Yo tengo: –cygwin 1.7.25 en windows 7 / 32bit –g ++ –version -> g ++ (GCC) 4.8.2 -libstdc ++. a -> gcc-g ++ – 4.8.2-1 Intenté hacer un c ++ Hello World: #include int main() { std::string s = “123”; int i = std::stoi(s); } comstackr da: $ g++ -std=c++11 main.cpp main.cpp: In function ‘int […]

Error “no declarado en este scope” con plantillas y herencia

Aquí hay un ejemplo de código que reproduce mi problema: template class Base { public: Base() {} virtual ~Base() {} protected: int myOption; virtual void set() = 0; }; template class ChildClass : public Base < std::vector > { public: ChildClass() {} virtual ~ChildClass() {} protected: virtual void set(); }; template void ChildClass::set() { myOption […]

GNU C ++ ¿cómo verificar cuándo -std = c ++ 0x está en efecto?

Mi comstackdor del sistema (gcc42) funciona bien con las características TR1 que quiero, pero trato de admitir versiones de comstackdor más nuevas que los sistemas, tratando de acceder a las cabeceras TR1 un #error que exige la opción -std = c ++ 0x debido a cómo interfaces con la biblioteca o alguna burbuja de hub […]