Gość: tityo
IP: *.eu.org
07.05.06, 18:24
Cześć! Napisałam taki programik ale pojawiają sie błędy kompilacji. Co
poprawić? Konstruktory? Proszę o poradę.
class Indeks
{ public:char imie[10]; char nazwisko[20]; char pesel[11]; char data[10];
Indeks();
Indeks (char *im,char *nazw,char *pes,char *dat);
void wyswietl();
};
class A:
public virtual Indeks
{ int rok;
public:
void wyswietl();
A (char *im, char *nazw , char *pes,int,char *dat);
};
class B:
public virtual Indeks
{ int pensja;
public:
void wyswietl();
B (char *im, char *nazw, char *pes,int,char *dat);
};
class C:
public virtual A, public virtual B
{ int id;
public:
void wyswietl();
C (char *im, char *nazw, char *pes,int,char *dat);
};
Indeks ::Indeks( char *im,char *nazw,char *pes,char *dat)
{ strcpy( imie, im);
strcpy( nazwisko, nazw);
strcpy( pesel, pes);
strcpy( data, dat);
}
void Indeks :: wyswietl()
{
cout<<"Imie: "<<imie<<endl;
cout<<"Nazwisko: "<<nazwisko<<endl;
cout<<"Pesel: "<<pesel<<endl;
cout<<"alarm: \a \a \a \a \a \a \a";
cout<<"Data ur: "<<data<<endl;
}
A :: A (char *im,char *nazw, char *pes,int c,char *dat): Indeks(im,nazw,pes,dat)
{rok=c;}
void A:: wyswietl()
{ Indeks :: wyswietl();
cout<<"rok: "<<rok<<endl;
}
B :: B (char *im, char *nazw, char *pes,int d,char *dat): Indeks(im,nazw,pes,dat)
{ pensja=d;}
void B :: wyswietl()
{ Indeks :: wyswietl();
cout<<"pensja: "<<pensja<<endl;
}
C:: C (char *im, char *nazw, char *pes,int e,char *dat):
A(im,nazw,pes,dat), B(im,nazw,pes,dat), C(im,nazw,pes,dat)
{id=e;}
void C :: wyswietl()
{ A:: wyswietl(); B:: wyswietl();
cout<<"id: "<<id<<endl;
}
int main()
{
A a("Jan","Kowalski", "50684123451",3,"15.06.1984");
B b("Ela","Nowak","12345678911",1200,"30,10,1984");
C x("Ola","Bak","1234567812",1500,"12.23.1980");
a.wyswietl();
b.wyswietl();
x.wyswietl();
system ("pause");
}