deas 2015


Declarando Funciones en C++

En C++, los identificadores solo se pueden usar en expresiones una vez que se han declarado. Por ejemplo, alguna variable x no se puede usar antes de declararse con una instrucción, por ejemplo:
int x;
Lo mismo se aplica a las funciones, las funciones no pueden invocarse antes de declararse. Es por eso que, en todos los ejemplos anteriores de funciones, las funciones siempre se definieron antes que la función main, que es la función desde donde se llamaron a las otras funciones. Si main se definió antes que las otras funciones, esto romperia la regla de que las funciones se declaran antes de ser utilizadas y por lo tanto, no se compilarían. La declaración incluirá todos los tipos implicados (el tipo de retorno y el tipo de sus argumentos), utilizando la misma sintaxis que se utiliza en la definición de la función, pero reemplazando el cuerpo de la función(el bloque de enunciados) con un punto y coma final.
La lista de parámetros no necesita incluir los nombres de los parámetros, sino solo sus tipos. Sin embargo, los nombres de los parámetros se pueden especificar, pero son opcionales y no es necesario que coincidan necesariamente con los de la definición de la función. Por ejemplo, una función llamada protofuncion con dos parámetros int se puede declarar con cualquiera de estas declaraciones:

int protofuncion(int first, int second);
int protofuncion(int, int);
De todos modos, incluir un nombre para cada parámetro siempre mejora la legibilidad de la declaración: Este ejemplo no es un ejemplo de eficiencia. Probablemente usted pueda escribir una version de este programa con la mitad de las líneas de código. De todos modos, este es un ejemplo que ilustra como se pueden declarar las funciones antes de su definición. Las siguientes líneas:
void impar (int a);
void par (int a);
declaran el prototipo de las funciones. Ellas ya contienen todo lo necesario para llamarlos: su nombre, los tipos de argumento y su tipo de devolución (void en este caso). Con estas declaraciones de prototipos en su lugar, se pueden llamar antes de que esté completamente definidas, lo que permite, por ejemplo, colocar la función desde donde se las llama (main) antes de la definición real de estas funciones. Pero declarar funciones antes de definirlas no sólo es útil para reorganizarlas dentro del código. En algunos casos, como este en particular, se requiere al menos de una de las declaraciones, porque "par impar" están siendo llamadas mutuamente; hay una llamada a "par" en "impar" y una llamada a "impar" en "par". Y no hay forma de estructurar el código para que "impar" se defina antes de "par" y "par" antes de "impar".

En esta capítulo hemos dado énfasis al tema de funciones y como son declaradas antes de su definición. Todo para poder darle más legibilidad al código; esto y otras cosas usted aprenderá aqui en este site bastante completo. No dejemos de practicar para conseguir nuestros objetivos. Les recomiendo que sigan mis links donde he colocado varios ejemplos básicos y complejos; sí, repítanlos para aprenderlos bien.

Publicar un comentario

Con la tecnología de Blogger.