En el caso de que pasa una referencia, tanto el identificador (por ejemplo, no por encima) del parámetro y el identificador del argumento, identificar el mismo objeto; no se crea ningún nuevo objeto. Valor por defecto en el parámetro Imagine que desea una función que es la adición de dos valores. Uno puede estar cambiando, pero el otro no se debe cambiar. El que no puede cambiar es llamado el valor por defecto y puede ser codificado en la lista de parámetros de la función.
Leer y tratar el siguiente código que ilustra esto: #include using namespace std; void fn (int p, int q = 20) {int w = p + q; cout} int main () {int p = 15; fn (p); return 0; } Se utiliza una inicialización para el valor por defecto en el parámetro (no siga que con un punto y coma). Si no te gusta el valor de q, a continuación, en la llamada de función, usted debe enviar un segundo argumento para q. Nótese que en la llamada de función (función de llamada) el argumento para el valor por defecto no se envía; es decir, no hay ningún argumento para el valor predeterminado.
Pasando cadena a una función un parámetro de tipo cadena tiene que ser un puntero a la charla. El argumento para la función de llamada puede ser una cadena literal o un puntero (dirección) para el inicio de alguna cadena en la memoria. Los dos ejemplos de código siguientes ilustran esto (si se los pruebe, hacer caso omiso de las advertencias por ahora).
#include using namespace std; int strFn (char * str) {cout} int main () {strFn ("una prueba"); return 0; } El segundo ejemplo de código de cadena es el siguiente: #include using namespace std; int strFn (char * str) {cout} int main () {char * myStr = "una prueba"; strFn (myStr); return 0; } En el primer ejemplo de código, justo antes de que se ejecute la función strFn (definición), la siguiente inicialización tiene lugar desconocido para usted: char * str = "una prueba"; En el segundo ejemplo de código, justo antes de que se ejecute la función strFn (definición), la siguiente inicialización tiene lugar desconocido para usted: char * str = myStr; Para apreciar