Funciones, Arreglos y Vectores Lección 5: Funciones Lección 6: Arreglos y Vectores
Lección 5: Funciones Temas Basada en el Capítulo 6 de C++ para Programadores, Deitel Temas Jerarquía de promoción para tipos fundamentales de datos Simulación con números aleatorios Reglas de scope o alcance Funciones inline Pase de parámetros por valor y por referencia Argumentos default para un función Funciones sobrecargadas (overloaded) Plantillas o modelos (templates) para funciones
Jerarquía de promoción para tipos fundamentales de datos Funciones Jerarquía de promoción para tipos fundamentales de datos En la siguiente figura se muestran los distintos tipos de datos y sus derivaciones en un orden de mayor a menor jerarquía de promoción.
Funciones Los tipos de menor jerarquía (abajo) pueden ser promovidos (convertidos) a tipos de mayor jerarquía (arriba). Un char puede ser promovido a int o float; pero un double no puede ser promovido a int, por ejemplo. Los compiladores de C y C++ generarán un mensaje de error o de advertencia (warning), respectivamente, si se trata de utilizar un dato de mayor jerarquía como un dato de menor jerarquía. Los sinónimos se refieren a que se puede usar una forma abreviada para especificar un cierto tipo de dato, por ejemplo: unsigned short int x; es lo mismo que unsigned short x; Si en una expresión se encuentran distintos tipos de datos, todos ellos serán promovidos (convertidos) al tipo de dato con mayor jerarquía dentro de la expresión. El valor de la expression también será del tipo de dato de mayor jerarquía. Ejemplo: Asuma que x es de tipo int, c de tipo char, y w y z de tipo float. En la siguiente expresión todos los datos van a ser promovidos a float y el valor resultante de la expresion, también: w = (c + x) / z; La promoción de datos también se da al pasar argumentos a una función. Si una función espera un argumento de cierto tipo y se le pasa un argumento de mayor jerarquía, éste será promovido al tipo del argumento esperado por la función.
Simulación del juego de datos Craps Funciones Programa: fig06_10.cpp Simulación del juego de datos Craps El jugador tira dos dados. Si en el primer tiro obtiene un 7 u 11, gana; si en el primer tiro obtiene 2, 3 o 12, pierde; si obtiene cualquier otro número en el primer tiro, para ganar, en los subsecuentes tiros debe obtener ese número antes de obtener un 7, de lo contrario pierde.
Funciones
Funciones
Funciones
Programa: fig06_11.cpp Reglas de alcance o scope Funciones Programa: fig06_11.cpp Reglas de alcance o scope
Funciones
Funciones
Programa: fig06_13.cpp Funciones en línea
Funciones
Programa: fig06_18.cpp Pase de argumentos por valor y por referencia Funciones Programa: fig06_18.cpp Pase de argumentos por valor y por referencia
Funciones
Programa: fig06_21.cpp Argumentos default de funciones
Funciones
Funciones Programa: fig06_22.cpp Operador unario de resolución de scope (alcance)
Funciones
Programa: fig06_23.cpp Funciones Sobrecargadas (overloaded)
Funciones
Programa: fig06_26.cpp Plantillas o modelos de funciones
Funciones
Funciones
Funciones
Funciones
Lección 6: Arreglos y Vectores Basada en el Capítulo 7 de C++ para Programadores, Deitel Temas Declaración de arreglos Listas de inicializadores de arreglos Arreglos de caracteres procesados como cadenas Inicialización de arreglos estáticos y automáticos Pase de arreglos y elementos individuales de arreglos a funciones Arreglos multidimensionales Listas de inicializadores de arreglos anidados Plantilla clase vector de la librería estándar de C++
Programa: fig07_03.cpp Inicialización de arreglos Arreglos y Vectores Programa: fig07_03.cpp Inicialización de arreglos
Arreglos y Vectores
Programa: fig07_04.cpp Inicialización de arreglos en su declaración Arreglos y Vectores Programa: fig07_04.cpp Inicialización de arreglos en su declaración
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Programa: fig07_12.cpp Arreglo de caracteres procesados como cadenas Arreglos y Vectores Programa: fig07_12.cpp Arreglo de caracteres procesados como cadenas
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores Programa: fig07_13.cpp Inicialización de arreglos estáticos y automáticos
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores Programa: fig07_14.cpp Pase de arreglos y elementos individuales de arreglo a funciones
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores Programa: fig07_18.cpp Uso de arreglos para almacenar las calificaciones
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Programa: fig07_22.cpp Inicialización de arreglos multidimensionales Arreglos y Vectores Programa: fig07_22.cpp Inicialización de arreglos multidimensionales
Arreglos y Vectores
Arreglos y Vectores Programa: fig07_22.cpp Uso de arreglo bidimensional para almacenar calificaciones
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores Programa: fig07_26.cpp Plantilla de clase vector de la librería estándar de C++
Arreglos y Vectores Antes de ver a main(), estudiemos las dos funciones que se encuentran definidas al final del programa:
Arreglos y Vectores
Arreglos y Vectores
Arreglos y Vectores