Estoy tratando de crear una libreta de direcciones muy simple. Creé una clase de contacto y la libreta de direcciones es una lista simple. Intento crear una función para permitir al usuario agregar contactos a la libreta de direcciones. Si tomo mi código fuera de la función, funciona bien. Sin embargo, si lo pongo, no funciona. Creo que es un problema de pasar por referencia vs pasar por valor que no estoy tratando como debería. Este es el código de la función:C++ lista de pase como un parámetro para una función
void add_contact(list<Contact> address_book)
{
//the local variables to be used to create a new Contact
string first_name, last_name, tel;
cout << "Enter the first name of your contact and press enter: ";
cin >> first_name;
cout << "Enter the last name of your contact and press enter: ";
cin >> last_name;
cout << "Enter the telephone number of your contact and press enter: ";
cin >> tel;
address_book.push_back(Contact(first_name, last_name, tel));
}
no consigo ningún error, sin embargo cuando intento para mostrar todos los contactos, puedo ver solamente los originales.
La lista '' libretaDirecciones no está siendo actualización al llamar 'add_contact (agenda);' –
Adrian