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

Search the boards