Ver Mensaje Individual
  #21 (permalink)  
Antiguo 13/03/2016, 17:19
Avatar de detective_jd
detective_jd
 
Fecha de Ingreso: abril-2011
Ubicación: Salto
Mensajes: 437
Antigüedad: 13 años
Puntos: 6
Respuesta: headers, carpetas y menúes c++

Hola eferion, resolví el problema pero tuve que instanciar el objeto:

te pongo sólo el código del create del crud

Código C++:
Ver original
  1. void created(){
  2.     int op;
  3.     cout << "\n ¿Desea crear una nueva persona? Aceptar=1/Cancelar=2 : ";
  4.     cin >> op;
  5.     if(op == 1) {
  6.         Persona *p = new Persona(); // así me anda
  7.         p->id = getMaxIdP();
  8.         p->nom = addString("Nombre");
  9.         p->ape = addString("Apelido");
  10.         if(create(p)){
  11.             cout << "\n persona creada :)" << endl;            
  12.         }
  13.         else {
  14.             cout << "\n la persona ya existe :(" << endl;
  15.         }                        
  16.     }
  17.     else if(op == 2) {        
  18.         pause(2);
  19.     }
  20.     else {
  21.         cout << "\n error :(" << endl;
  22.     }
  23. }

pero el check que me asegura de si la persona existe por medio el nombre no funciona:

ManPersonas (parte del check y create)

Código C++:
Ver original
  1. bool check(Persona* p){        
  2.         for(Persona* per : lista){
  3.             if(per->nom == p->nom){
  4.                 return true;
  5.             }
  6.         }
  7.         return false;        
  8.     }
  9. bool create(Persona* p){
  10.         if(check(p)){            
  11.             return false;
  12.         }
  13.         else{
  14.             lista.push_back(p);
  15.             return true;
  16.         }
  17.     }

Pensar que en java y php no tengo los problemas que estoy teniendo en c++ y me da bronca, que sugerencia me das con el check y con la validación de numeros????

Espero sus respuestas y saludos