ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Programacion en C++/Funciones


Enviado por   •  13 de Septiembre de 2012  •  1.113 Palabras (5 Páginas)  •  509 Visitas

Página 1 de 5

Programación en C++/Funciones

← Estructuras Streams →

Funciones

Definiendo una función

Una función es un conjunto de líneas de código que realizan una tarea

específica y puede retornar un valor. Las funciones pueden tomar

parámetros que modifiquen su funcionamiento. Las funciones son

utilizadas para descomponer grandes problemas en tareas simples y

para implementar operaciones que son comúnmente utilizadas durante

un programa y de esta manera reducir la cantidad de código. Cuando

una función es invocada se le pasa el control a la misma, una vez que

esta finalizó con su tarea el control es devuelto al punto desde el cual la

función fue llamada.

<tipo> [clase::] <nombre> ( [Parámetros] )

{

cuerpo;

}

Ejemplo de una función

Para comenzar, vamos a considerar el caso en el cual se desea crear la función cuadrado(), misma que deberá volver

el cuadrado de un número real (de punto flotante), es decir, cuadrado() aceptará números de punto flotante y

regresará una respuesta como número flotante.

Nota: aunque para la función que veremos el tipo de retorno coincide con el tipo de parámetro pasado, algunas veces

las cosas pueden cambiar, es decir, no es obligatorio que una función reciba un parámetro de un tipo y que tenga que

regresar una respuesta de dicho tipo.

// regresar el cuadrado de un número

double cuadrado(double n)

{

return n*n;

}

Parámetros

Normalmente, las funciones operan sobre ciertos valores pasados a las mismas ya sea como constantes literales o

como variables, aunque se pueden definir funciones que no reciban parámetros. Existen dos formas en C++ de pasar

parámetros a una función; por referencia o por valor. El hecho es que si en una declaración de función se declaran

parámetros por referencia, a los mismos no se les podrá pasar valores literales ya que las referencias apuntan a

objetos (variables o funciones) residentes en la memoria; por otro lado, si un parámetro es declarado para ser pasado

por valor, el mismo puede pasarse como una constante literal o como una variable. Los parámetros pasados por

referencia pueden ser alterados por la función que los reciba, mientras que los parametros pasados por valor o copía

no pueden ser alterados por la función que los recibe, es decir, la función puede manipular a su antojo al parámetro,

Programación en C++/Funciones 2

pero ningún cambio hecho sobre este se reflejará en el parámetro original.

Parametros por valor

La función cuadrado() (ver arriba) es un clásico ejemplo que muestra el paso de parámetros por valor, en ese

sentido la función cuadrado() recibe una copia del parámetro n. En la misma función se puede observar que se

realiza un calculo ( n*n ), sin embargo el parámetro original no sufrirá cambio alguno, esto seguirá siendo cierto aún

cuando dentro de la función hubiera una instrucción parecida a n = n * n; o n*=n;.

Parametros por referencia

Para mostrar un ejemplo del paso de parámetros por referencia, vamos a retomar el caso de la función cuadrado,

salvo que en esta ocasión cambiaremos ligeramente la sintaxis para definir la misma. Veamos:

// regresar el cuadrado de un número

double cuadrado2(double &n)

{

n *= n;

return n;

}

Al poner a prueba las funciones cuadrado() y cuadrado2() se podrá verificar que la primera de estas no cambia el

valor del parámetro original, mientras que la segunda sí lo hace.

Llamar a una función

para llamar a la función cuadrado() vista anteriormente, podemos emplear:

cout << cuadrado(25);

cout << cuadrado(X);

R = cuadrado(X); // guardar en R el cuadrado de X

Funciones void

Bajo ciertas circunstancias se deseará escribir funciones que no regresen valor alguno (esto sería algo parecido a

escribir procedures en Pascal) y para ello podemos declarar a la función como void. La palabra reservada void es

utilizada para declarar funciones sin valor de retorno y también para indicar que una función específica

...

Descargar como (para miembros actualizados)  txt (8 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com