Corporación Universitaria del Caribe CECAR Fundamentos de programación II.

1 Corporación Universitaria del Caribe CECAR Fundamentos ...
Author: Lucas Torregrosa Gómez
0 downloads 2 Views

1 Corporación Universitaria del Caribe CECAR Fundamentos de programación II

2  Hasta el momento se han hecho funciones que reciben parámetros por valor  Se puede pedir que los pase por referencia utilizando &.  Por valor: int FijateSiEsCincoVal(int x);  Por referencia: int FijateSiEsCincoRef(int &x);

3  Las referencias sirven para definir "alias" o nombres alternativos para un mismo objeto.  Para ello se usa el operador de referencia (&).

4 #include void elevarCuadrado (int &); //prototipo de función que recibe una referencia a un int void main() { int x = 0; //Declaracio e inicializacion en 0. cout > x; cout

5 #include void IncrementarVal(int x) { x=x+1; } void IncrementarRef(int &x) { x=x+1; } void main() { int a; a=5; cout

6  cuando se llama a la función incluyendo valores para esos parámetros opcionales, funcionará como cualquiera de las funciones que hemos usado hasta ahora. Pero si se omiten todos o algunos de estos parámetros la función trabajará con los valores por defecto para esos parámetros que hemos definido.

7 #include double VelocidadFinal(double h, double v0=0.0, double g=9.8); void main() { cout

8  Este método tiene algunas limitaciones  Sólo los últimos argumentos de las funciones pueden tener valores por defecto.  Sólo los últimos argumentos pueden ser omitidos en una llamada.  Cada uno de los valores por defecto debe especificarse bien en los prototipos, o bien en las declaraciones, pero no en ambos.

9  Cuando se declaren valores de parámetros por defecto en prototipos, no es necesario indicar el nombre de los parámetros. void funcion(int = 1); // Legal void funcion1(int a, int b=0, int c=1); // Legal void funcion2(int a=1, int b, int c); // Ilegal void funcion3(int, int, int=1); // Legal... void funcion3(int a, int b=3, int c) // Legal { }

10  Los argumentos por defecto empiezan a asignarse empezando por el último. int funcion1(int a, int b=0, int c=1);... funcion1(12, 10); // Legal, el valor para "c" es 1 funcion1(12); // Legal, los valores para "b" y "c" son 0 y 1 funcion1(); // Ilegal, el valor para "a" es obligatorio

11  podemos definir varias funciones con el mismo nombre, con la única condición de que el número y/o el tipo de los argumentos sean distintos.  El compilador decide cual de las versiones de la función usará después de analizar el número y el tipo de los parámetros.

12 #include int mayor(int a, int b); char mayor(char a, char b); double mayor(double a, double b); void main() { cout

13 #include int mayor(int a, int b); int mayor(int a, int b, int c); int mayor(int a, int b, int c, int d); void main() { cout

14  Escriba un programa que calcule el área de distintas figuras geométricas(triángulo, Cuadrado, rectángulo, círculo, trapecio, etc.) sobrecargando la función área con el número y tipo de argumentos necesarios para cada tipo de figura.