Posted By: Pat (Nesmrdi rum a smrdi prace) on 'CZprogram'
Title: Re: C++
Date: Thu Jan 2 20:04:40 2003
I tady dodam, ze se jedna o gcc-3.2 (je to do skoly a kompilator je jasne dany)
> > Proc ale nemuzu pouzit co je v te okomentovane verzi nahore?
> > 't2::t2(string txt):text(txt){', ona ta ta t2 nema ten string text?!
> >
> > Kouzla, cary?
>
> Ma, ale t1 nema default konstruktor v tom kodu cos napsal. Tj. bys mohl
> udelat
> t2:t2(string txt) : t1(txt), text(txt) {...}; anebo pridat do t1 kontruktor
> bez paramteru.
tady v tom kodu nema - v tom puvdnim postu (bez RE:) sou ty objekty psany se
dvema konstruktorama, ten priklad jde zkompilovat.
zkusim to znovu:
struct t{string text; t(string txt):text(txt); t(){};};
struct v: virtual t{v(string txt):text(txt);v(){};};
tohle nepujde zkompilovat, proc? Nezdedi snad 'v' od 't' polozku 'text' typu
string? Ja mel zato, ze pokud dedim, dostanu komplet predka (tedy public
veci, ale to tady odpada - jde o struct) a plus si do toho muzu bastlit
metody specificke pro ten konkretni objekt.
Nehodlam vysvetlovat a ...
... Sipu si popel na *hlavu*