• Domingo 15 de Diciembre de 2024, 15:28

Autor Tema:  no encuentro error en el paso de parametros,  (Leído 1440 veces)

pacorubio77

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
no encuentro error en el paso de parametros,
« en: Domingo 9 de Noviembre de 2008, 12:01 »
0
Hola,se que fallo en el paso de parámetros,tengo el siguiente método:

void Especialidad::asignarMedico(const Paciente &p){

   int pos;
   pos=MenorCarga();
   medicos[pos]->addPaciente(p);
}

que como veis utilizo addPaciente(p),pero claro la implementacion de este método es:

void Medico::addPaciente(Paciente *p){

   pacientes.push_back(p);
}

y su prototipo es:

void addPaciente(Paciente *p);

Se que el error esta cuando hago medicos[pos]->addPaciente(p),como le indico que p tiene que ser un puntero?

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: no encuentro error en el paso de parametros,
« Respuesta #1 en: Domingo 9 de Noviembre de 2008, 12:44 »
0
Usa las etiquetas de código.

Código: C
  1. void Especialidad::asignarMedico(const Paciente &p){
  2.  
  3. int pos;
  4. pos=MenorCarga();
  5. medicos[pos]->addPaciente(&p);
  6. }
  7.  

pacorubio77

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: no encuentro error en el paso de parametros,
« Respuesta #2 en: Domingo 9 de Noviembre de 2008, 18:07 »
0
Gracias por la contestacion,pero sigue dando fallo aunque ponga medicos[pos]->addPaciente(&p);
sigo investigando,un saludo,espero respuesta.Gracias.

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: no encuentro error en el paso de parametros,
« Respuesta #3 en: Domingo 9 de Noviembre de 2008, 20:53 »
0
Porque lo pasas como const &p... Pásalo normal, como p.

pacorubio77

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: no encuentro error en el paso de parametros,
« Respuesta #4 en: Domingo 9 de Noviembre de 2008, 21:21 »
0
Pero eso no es solucion,si esta como const se tiene que quedar como const,lo he arreglado poniendo esto de la siguiente manera:
medicos[pos]->addPaciente((Paciente *)&p);

Pero no se el por què,,,me puedes ayudar,????

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: no encuentro error en el paso de parametros,
« Respuesta #5 en: Domingo 9 de Noviembre de 2008, 21:37 »
0
Cita de: "pacorubio77"
Pero eso no es solución
Yo qué sé qué te piden en la tarea :P

Cita de: "pacorubio77"
Pero no se el por què,,,me puedes ayudar,????
Bueno has hecho un cast especificando que el puntero &p es un puntero a la clase Paciente. Eso es todo.