Una función en los lenguajes C + /C + + es un proceso para alcanzar una meta . La sintaxis básica y mecanismo de un C + + programa hereda reglas básicas del lenguaje C original y se basa en ella. Definir la función en un objeto de C + + o como una función global; llamar a la función con valores para cada parámetro definido. Los argumentos de las funciones
Definir una lista de variables como parámetros a la función . Estos se llaman "argumentos ". También puede definir una función sin parámetros en absoluto :
objecto :: función f ( arg1 int , char * arg2 , doble arg3 ) {//Función Cuerpo //. resultado varía con valores de argumento }
Faltan argumentos
C + + le permite llamar a una función sin sus argumentos definidos . Esto no causa un tiempo de compilación , enlace en tiempo o un error en tiempo de ejecución . En este caso, la función utiliza valores por defecto para los argumentos en tiempo de ejecución . Proporcionar valores por defecto para los argumentos en ese mismo momento :
void MyFunction ( doble d_arg = 0,0 ) { if ( d_arg == 0.0 ) ... else ...}
sobrecarga de funciones
Esta es una característica muy especial de C + + . Usted puede " sobrecargar " la definición de la función existente por otro. El nombre de la función sigue siendo la misma , pero la lista de argumentos es diferente. Utilice esta función para sobrecargar las funciones de la biblioteca estándar también, pero sólo cuando sea necesario:
ejemplo MyFunction int (int a); MyFunction int ( int a , doble b); MyFunction int ();
Aquí, la sintaxis de la llamada a la función indica al compilador que MyFunction para recoger . Si no se pasa ningún argumento , el tercero es recogido . Si la llamada de función es la siguiente: " r_val = MyFunction ( 12 )," el compilador utiliza la segunda definición
Proporcionar valores por defecto para los argumentos , como se muestra en la Sección 2 , es un método de acceso directo . la sobrecarga de funciones , sin embargo , sólo funciona en casos sencillos
sobrecarga constructores de objetos
El verdadero poder de la sobrecarga de funciones en C + + es en el constructor sobrecarga. . Definir el constructor de un objeto en dos o más formas. En otras palabras , permite que la persona que llama para crear el objeto de diferentes maneras , por diversas razones - como la compatibilidad con versiones anteriores , la portabilidad o flexibilidad . Constructor para el objeto MiObjeto se llama " MiObjeto (). " Por ejemplo :
fecha de la clase { int días , meses , años ; pública
: Fecha de vacío (char * C_DATE ) ; void fecha (int mm , int dd, int año) , fecha void ( ) ;
...
}
En la versión anterior de este software , el " objeto Date "se ha creado usando una cadena introducida por el usuario. En la próxima versión , el mes , día y año se aprobaron por separado para evitar la comprobación formato rígido . A partir de la fecha de publicación , los programadores no se basan en el usuario en absoluto, sino ir a buscar o calcular la fecha con el reloj del sistema, en el proceso de creación del objeto " Fecha " . Crear el objeto en el programa:
Método A: date (" 10/10/2011 "); Método B : Fecha ( 10 , 10 , 2011 ), Método C: date ( ) ;
Si está familiarizado con la versión anterior de este software, y se encuentra con un programa de usuario que llama a la fecha sin argumentos , que puede ser confundido en cuanto a cómo el compilador permite eso. La explicación es la sobrecarga de funciones .