X-Git-Url: https://git.llucax.com/z.facultad/75.29/susanita.git/blobdiff_plain/a86e26ae42584c979262de7f6ddefa815ac7c625..dfd0218b2eec273821401b2715f177b7b2de7a22:/src/persona.cpp diff --git a/src/persona.cpp b/src/persona.cpp index ca121a4..e35f042 100644 --- a/src/persona.cpp +++ b/src/persona.cpp @@ -123,7 +123,7 @@ comprometer_con(Persona& p) assert(pareja != 0); pareja->estado = SOLTERO; pareja->pareja = 0; - pareja->rechazos.push_back(&p); + pareja->rechazos.push_back(this); } // nos comprometemos @@ -136,8 +136,36 @@ comprometer_con(Persona& p) for (ofertas_type::iterator pretendiente = ofertas.begin(); pretendiente != ofertas.end(); ++pretendiente) { - (*pretendiente)->rechazos.push_back(&p); + (*pretendiente)->rechazos.push_back(this); } ofertas.clear(); } +// Nos comprometemos con la otra persona y a ella la comprometemos con nosotros +void +Persona:: +comprometer_con_bt(Persona& p) +{ + // nos comprometemos + estado = COMPROMETIDO; + pareja = &p; + p.estado = COMPROMETIDO; + p.pareja = this; +} + +// Rompemos el compromiso existente +void +Persona:: +romper_compromiso(Persona& p) +{ + assert(pareja == &p); + assert(p.pareja == this); + + // rompemos el compromiso + estado = SOLTERO; + pareja = 0; + p.estado = SOLTERO; + p.pareja = 0; +} + +