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 originalvoid created(){
int op;
cout << "\n ¿Desea crear una nueva persona? Aceptar=1/Cancelar=2 : ";
cin >> op;
if(op == 1) {
Persona *p = new Persona(); // así me anda
p->id = getMaxIdP();
p->nom = addString("Nombre");
p->ape = addString("Apelido");
if(create(p)){
cout << "\n persona creada :)" << endl;
}
else {
cout << "\n la persona ya existe :(" << endl;
}
}
else if(op == 2) {
pause(2);
}
else {
cout << "\n error :(" << endl;
}
}
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 originalbool check(Persona* p){
for(Persona* per : lista){
if(per->nom == p->nom){
return true;
}
}
return false;
}
bool create(Persona* p){
if(check(p)){
return false;
}
else{
lista.push_back(p);
return true;
}
}
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