¿Cuál es la diferencia entre un puntero y una referencia?
Una referencia debe vincularse al crearse y nunca puede revincularse; un puntero puede ser null, reasignarse, y tiene su propia dirección y aritmética. En la práctica tomas una referencia cuando la cosa debe existir y un puntero cuando la ausencia es un estado válido. Una referencia no es un objeto separado, por eso no hay referencias a referencias ni arrays de ellas.