La siguiente declaración en la función principal llama a la función, AFN, pasando el identificador del objeto cuyo valor es 88 como argumento. El parámetro de la función llamada es "int & no". Inmediatamente la función llamada comienza a ejecutar, la dirección de parámetro se convierte en el equivalente a & Theint, que es la dirección del objeto declarado en la primera declaración en la función principal. Así que de inmediato la ejecución de la función llamada se inicia, y que no y Theint y son la misma dirección a un objeto; es decir, que no y Theint se identifica el mismo objeto.
La primera declaración en la función llamada muestra el valor de nada, que es el mismo que el valor de Theint. La segunda declaración en la función llamada asigna un nuevo valor a no, asignando automáticamente el nuevo valor a Theint, debido a que ambos identificadores identifican el mismo objeto. La función llamada no tiene una sentencia return, aunque su definición comienza con un tipo de retorno; esto es aceptable; que no es parte del tema aquí; es para aquellos que pueden ser inquisitivo.
De vuelta en la función principal: La función de llamada se llama por la segunda declaración en la función principal. La función de llamada se ejecuta antes de que se ejecute la próxima (tercera) Declaración en la función principal. No nos asignamos ningún valor de retorno de la función llamada a cualquier objeto (identificador) en la función principal. No pudimos hacer esto porque la función llamada no devuelve nada (no tenía ninguna sentencia return; no es parte de este tema sin embargo).
La tercera declaración en la función principal muestra el valor de Theint, que es el mismo valor que para no en la función llamada. Nota, al pasar por referencia, el parámetro (en la llamada de función) es la dirección de un objeto (identificador) pero el argumento (en función que llama) es un identificador y no la dirección del objeto (identificador