Dodawanie kilku obiektów w klasie
Ostatnio zmodyfikowano 2023-02-02 17:56
maateusz11 Temat założony przez niniejszego użytkownika |
Dodawanie kilku obiektów w klasie » 2021-01-28 11:22:47 Witam mam problem z dodaniem kilku obiektów w klasie. Aktualnie mogę dodać tylko 1 klienta. Chciałbym móc dodać 10 klientów najlepiej przy użyciu tablic tylko nie wiem jak to zrobić. Proszę o jakieś wskazówki.
#include <iostream>
using namespace std;
class Klient { public: string imie; string nazwisko; int pesel; int telefon; int numer_pokoju;
void dodaj_klienta() {
cout<<"DODAWANIE KLIENTA"<<endl; cout<<"Podaj imie: "; cin>>imie; cout<<"Podaj nazwisko: "; cin>>nazwisko; cout<<"Podaj numer telefonu: "; cin>>telefon; cout<<"Podaj pesel: "; cin>>pesel; cout<<"Wpisz numer pokoju klienta: "; cin>>numer_pokoju; cout<<"DODANO KLIENTA!"<<endl;
} int main() { int liczba; Klient k;
cout<<"***********MENU***********"<<endl; cout<<"Wpisz 1 w celu dodania osoby"<<endl; cout<<"Wpisz 0 w celu wylaczenia programu"<<endl;
do { cin>>liczba; switch( liczba ) { case 1:
k.dodaj_klienta();
break;
case 0: cout<<"Wylaczanie programu!"; break; }
}while(liczba!=0);
return 0; }
|
|
tBane |
» 2023-02-02 17:56:36 pomoze ci w tym lista jednokierunkowa. zrob cos takiego: class client { public: int daneKlienta; client * nastepny client(); ~client(); };
client::client() { nastepny = NULL; }
to jest tak zwana lista jednokierunkowa, czyli taka struktura, ktora nieosyc ze przechowuje dane o kliencie to tez ma swojego nastepnika (oczywiscie gdy nasepny != NULL). stworzysz pierwszego klienta w ten sposob: client * pierwszyKlient = new client();
przegladac taka liste mozesz w ten sposob: void wypisz_wszystkich() { client * obecnyKlient = pierwszyKlient; while( obecnyKlient != NULL ) { cout << obecnyKlient->daneKlienta << "\n"; obecnyKlient = obecnyKlient->nastepny; } }
|
|
« 1 » |