Posted By: jerryiii (Vsude dobre, v CR nejhur) on 'CZprogram'
Title: Re: C++
Date: Thu Jan 2 19:35:15 2003
> Dobry, takze sem se podival na nejaky examply a vim ze to ma byt:
>
> t2::t2(string txt):t1(txt){
> cout << "Konstruktor t2 s parametrem " << text << endl;
> }
>
> Otazka je proc? Pokazde kdyz se vola 't2 var2("trest")' vola se i
> konstruktor
> t1, predpokladam, ze tim :t1(txt) dam najevo ze nechci implicitni
> konstruktor, ale prave ten parametricky.
> Jo/ne?
Ne, musis explicitne specifikovat. Pokud nespecifikujes, tak by se volal
t1::t1() i z t2:t2 s parametrama. Samozrejme jen pokud by existoval a pokud
by byl dostupnej (tj. nebyl by private), jinak ti to nezkompiluje.
> 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.
> BTW vetsinou kdyz uz zacnu smolit dotaz na blianu, najdu odpoved do 10ti sec
>
> po zmacknuti Ctrl+x;Enter. Ma to tady este nedko?
>
> Nehodlam vysvetlovat a ...
> ... Sipu si popel na
> *hlavu*
Jerry III
Enough said ...
http://jerryiii.home.sprynet.com/mica/index.htm