Cita de: SARGE553413 en 9 Enero 2014, 23:14 PM¿donde se aloja el código de las funciones que se van creando?Antes o después del código del progama.
Cuando se llama a una función, lo que se hace es guardar la dirreción actual y dar un "salto" hacia la dirreción donde está el código de la función, cuando termina vuelve a dar otro salto hacia la dirreción anterior.
Otro tema aparte, son las funciones inline de C++. Son funciones muy cortas y que van precedidas con el modificador "inline", lo que hace el compilador ahí es copiar y pegar el código en todas las llamadas que haya. Así gana un poquito de eficiencia ya que no hay que hacer ningún salto ni nada.
Cita de: SARGE553413 en 9 Enero 2014, 23:14 PMEn C++ 11, ¿las funciones lambda se alojan en algún sitio distinto de las funciones normales?Normalmente es una función normal y corriente.
Cita de: SARGE553413 en 9 Enero 2014, 23:14 PMInvestigando por ahí, he leído que hay que intentar declarar static todas las funciones locales. ¿Se refiere a las funciones que están en el main? ¿Quá pasa con las funciones static, van a zona de memoria distinta de las no static?Static sirve para que esa función no sea accesible desde fuera de ese fichero. Se usa en programas multi-archivo.
Más que optimización será por encapsulamiento, aunque no descarto que el compilador pueda hacer alguna optimización (más restricciones, significa mayor libertad para optimizar).
En las funciones que se encuentran en una clase, el static tiene una función totalmente diferente. No confundir

Cita de: SARGE553413 en 9 Enero 2014, 23:14 PMPD. Me interesa mucho saber directrices para optimizar al máximo el rendimiento del programa, como saber que hay que hacer las mínimas comparaciones posibles.Los compiladores de hoy en día son muy buenos, y algunas cosas ya las hace si activas el "modo optimización" en las opciones del compilador.
Agradeceré cualquier link con información, y como siempre, si es en español, mas todavía.
Saludos.
Lo que más se nota es en usar un algoritmo eficiente o poco eficiente.
Una busqueda secuencial en una lista de 1.000.000 elementos, necesitas hacer 1.000.000 iteraciones (como máximo) para encontrar un determinado.
Una busqueda binaria no pasa de 20 iteraciones. Y en el caso de ser palabras de un diccionario, podrías usar un algoritmo de prefijo y encontrar una palabra de 4 letras en 4 iteraciones.
Pasar de 1.000.000 de iteraciones a 4 teraciones es una brutalidad.