Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/10/2012, 03:16
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 12 años, 5 meses
Puntos: 83
Respuesta: Duda con una funcion

Estas desreferenciando la cuenta que envias a 'IntercambiarSaldo', de forma que se duplican los datos y la operacion se hace solamente en el duplicado, no en que tienes en el main; dicho de otra forma, cuando envias una desreferencia de Chema se crea Chema_paralelo y las operaciones se hacen sobre ese y no sobre el original. Tienes que enviar un puntero a la cuenta para que trabaje sobre los datos que tienes en el ambito del main:

Código:
//el prototipo
void IntercambiarSaldo(CuentaBancaria *, long );

//la funcion
void CuentaBancaria::IntercambiarSaldo(CuentaBancaria *cuenta1, long cantidad) {
    this->IngresarSaldo(cantidad);
    cuenta1->SustraerSaldo(cantidad);
}

//y la llamada a la funcion
Jose.IntercambiarSaldo(&Chema, 1000);
Una cosa, la entrada a la aplicacion tiene que ser de tipo int y retornar un entero a modo de codigo de error (0 cuando todo ok):

Código:
int main() {
    ...
    return 0;
}
Otra cosa, los tipos long pueden guardar datos hasta (+-)2147483647, este banco será para millonarios no? :)

Saludos
vosk