_________________________________________________
_________________________________________________
Ahí va una pequeña lista de consejos para optimizar código c++ que en algunos casos por tontos que parezcan pueden repercutir en la velocidad de procesamiento del código notablemente.
Recuerda que el código más rapido y más optimizado es aquel que no es ejecutado, con esto quiero decir que en muchas ocasiones consumimos recursos innecesarios por lo hábitos adquiridos con el tiempo.
Optimiza los bucles
Siempre que sea posible, realiza el bucle en negativo en vez de en positivo esto quiere decir de n a 0 y no de 0 a n.
Ejemplo:
en vez de
Tmabien fijate en el detalle de que ++i es más rápido que i++ siempre y cuando estos aparecen dentro de un bucle.
Usa 'int'
Siempre que te sea posible utiloza el tipo int en vez de char o short.
La explicación es que un tipo int tiene un tamaño entre el de short y el de long, ambos inclusive, preferentemente el tamaño de un apuntador de memoria de la máquina, por lo que es el más comun para todas las máquinas.
Estos son los distintos tipos de los que dispones en c++:
1. Enteros
1. int
2. long int
3. long long
4. short
5. char
6. wchar_t
2. Flotantes
1. float (IEEE754 Simple)
2. double (IEEE754 Normal)
3. long double (IEEE754 Extendido)
Declara las funciones locales cómo estáticas
Intenta declarar todas tus funciones locales cómo funciones locales estáticas.
Esto hará que estas funciones no sean visibles desde fuera del archivo .cpp, ademas algunos compiladores tienen un funcionamiento m´ñas óptimo con ellas.
Optimiza tus declaraciones "IF"
Usa por ejemplo:
en vez de:
La explicación es muy sencilla el primer ejemplo es más sencillo, para el compilador es más pesado tener que realizar las dos condiciones if, else.
Optimiza los switch
Muy sencillo pon los casos más comunes en primer lugar de este modo nos ahorraremos unos cuantos saltos...
Optimiza las pequeñas operaciones
Sumar es más ligero que multiplicar y multiplicar es más ligero que dividir por lo tanto intenta evitar las multiplicaciones y divisiones siempre que sea posible.
Inicializa las variables en la declaración
Siempre que sea posible inicializa las variables al mismo tiempo que esta son declaradas.
Por ejemplo:
es más rapido que:
Pasa las variables por referencias
Intenta pasar las clases por referencias en lugar de pasarlas cómo valores.
Por ejemplo:
mejor que:
Cuidado al concatenar y sumar valores
Es mejor:
que...
Es mejor el primer ejemplo puesto que evita el crear un objeto adicional.
Por: rufiopunkrock
__________________
Consejos Para Optimizar/Mejorar Tus Codigos C++
_________________________________________________
Ahí va una pequeña lista de consejos para optimizar código c++ que en algunos casos por tontos que parezcan pueden repercutir en la velocidad de procesamiento del código notablemente.
Recuerda que el código más rapido y más optimizado es aquel que no es ejecutado, con esto quiero decir que en muchas ocasiones consumimos recursos innecesarios por lo hábitos adquiridos con el tiempo.
Optimiza los bucles
Siempre que sea posible, realiza el bucle en negativo en vez de en positivo esto quiere decir de n a 0 y no de 0 a n.
Ejemplo:
Código:
for (i = n-1; i >= 0; --i)
Código:
for (i = 0; i != n; ++i)
Usa 'int'
Siempre que te sea posible utiloza el tipo int en vez de char o short.
La explicación es que un tipo int tiene un tamaño entre el de short y el de long, ambos inclusive, preferentemente el tamaño de un apuntador de memoria de la máquina, por lo que es el más comun para todas las máquinas.
Estos son los distintos tipos de los que dispones en c++:
1. Enteros
1. int
2. long int
3. long long
4. short
5. char
6. wchar_t
2. Flotantes
1. float (IEEE754 Simple)
2. double (IEEE754 Normal)
3. long double (IEEE754 Extendido)
Declara las funciones locales cómo estáticas
Intenta declarar todas tus funciones locales cómo funciones locales estáticas.
Código:
static void foo()
Optimiza tus declaraciones "IF"
Usa por ejemplo:
Código:
bar();
if (condition)
{
undoBar();
foo();
}
Código:
if (condition)
{
foo();
}
else
{
bar();
}
Optimiza los switch
Muy sencillo pon los casos más comunes en primer lugar de este modo nos ahorraremos unos cuantos saltos...
Optimiza las pequeñas operaciones
Sumar es más ligero que multiplicar y multiplicar es más ligero que dividir por lo tanto intenta evitar las multiplicaciones y divisiones siempre que sea posible.
Inicializa las variables en la declaración
Siempre que sea posible inicializa las variables al mismo tiempo que esta son declaradas.
Por ejemplo:
Código:
TMyClass myClass = data;
Código:
TMyClass myClass;
myClass = data;
Pasa las variables por referencias
Intenta pasar las clases por referencias en lugar de pasarlas cómo valores.
Por ejemplo:
Código:
void foo(TMyClass &myClass)
Código:
void foo(TMyClass myClass)
Cuidado al concatenar y sumar valores
Es mejor:
Código:
myClass += value;
Código:
myClass = myClass + value;
Por: rufiopunkrock
No hay comentarios:
Publicar un comentario