C++ - pass-Liste als parameter an eine Funktion

Ich versuche zu bauen ein sehr einfaches Adressbuch. Erstellt habe ich eine Kontakt-Klasse und das Adressbuch ist eine einfache Liste. Ich bin versucht, zu erstellen eine Funktion, um dem Benutzer zu ermöglichen, fügen Sie Kontakte aus dem Adressbuch. Wenn ich meinen code außerhalb der Funktion, funktioniert es. Allerdings, wenn ich steckte es in, es funktioniert nicht. Ich glaube, dass es eine übergabe by reference vs-Wert übergeben werden, problem welches ich nicht behandeln Sie wie ich sollte. Dies ist der code für die Funktion:

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));
}

Ich bekomme keine Fehler aber wenn ich versuche, um alle Kontakte, die ich sehen kann, nur die Originale.

  • Die list<Contact> addressBook wird nicht aktualisiert beim aufrufen add_contact(addressBook);
InformationsquelleAutor Adrian | 2012-02-15
Schreibe einen Kommentar