<html><body>Uz jsem to psal, cely problem je, ze jste pouzil klicove slovo static u te promenne. Nevim, ceho jste chtel dosahnout, ale naridil jste kompilatoru to, ze ma existovat jen jedna promenna testvar pro vsechny instance te tridy a take vsechny potomky. Protoze je public, tak na ni muze kdokoliv odkudkoliv pomoci volani <jmenotridy>::<jmenopromenne>. Cela problematika statickych promennych a metod pro tridy sice neni uplne slozita, ale zaslouzi si nastudovat...<br><br>-- <br>Pavel Brychta<br>http://www.xpablo.cz<br><br><aside>---------- Původní e-mail ----------<br>Od: Tomas Chvatal <tchvatal@fordiag.cz><br>Komu: HW-news <hw-list@list.hw.cz><br>Datum: 8. 9. 2023 11:56:48<br>Předmět: Re: cplusplus dedeni</aside><br><blockquote data-email="tchvatal@fordiag.cz">Dekuji moc.
<br>Toto presne jsem zkusil a vznikla dalsi otazka :-)
<br>
<br>Proc kdyz mam v child tride zminenou tu ?samou? vlastnost, tak to prestane 
<br>dedit ?
<br>Co to je za koncept ? dedeni ?
<br>Jak je to uvnitr c++ implementovane a proc ?
<br>
<br>s přáním hezkého dne / best regards
<br>Tomáš Chvátal
<br>tchvatal@fordiag.cz
<br>
<br>----- Původní zpráva ----- 
<br>Od: "Jan Waclawek" <konfera@efton.sk>
<br>Komu: "HW-news" <hw-list@list.hw.cz>
<br>Odesláno: 7. září 2023 21:27
<br>Předmět: Re: cplusplus dedeni
<br>
<br>
<br>#include <iostream>
<br>
<br>class basecls {
<br>
<br>public:
<br>
<br>int testvar=100;
<br>
<br>int getval() {
<br>
<br>return testvar;
<br>
<br>}
<br>
<br>};
<br>
<br>class childcls : public basecls {
<br>// int testvar;
<br>public:
<br>
<br>childcls() {
<br>  testvar = 200;
<br>}
<br>
<br>};
<br>
<br>
<br>int main(){
<br> basecls base;
<br> childcls child;
<br> std::cout << base.getval() << std::endl;
<br> std::cout << child.getval() << std::endl;
<br>}
<br>
<br>
<br>Skuste si to so zakomentovanym a s odkomentovanym riadkom int testvar;
<br>
<br>wek
<br>
<br>
<br>
<br>----- Original Message ---------------
<br>
<br>
<br>Zdravim.
<br>
<br>Muze se mi, prosim, nekdo pokusit vysvetlit, jak je to v C++ mysleno s
<br>"dedenim" vlastnosti ?
<br>Jsem "tridne postizeny" z VFP a ted jsem u c++ dost zmateny ;-)
<br>
<br>Mam tridu "basecls" (ta ma metody getval())
<br>Od ni dedim do druhe tridy "childcls". V te mam vlastnost testvar
<br>predefinovanou na jinou hodnotu.
<br>class basecls {
<br>
<br>public:
<br>
<br>static const int testvar=100;
<br>
<br>int getval() {
<br>
<br>return testvar;
<br>
<br>}
<br>
<br>};
<br>
<br>class childcls : public basecls {
<br>
<br>public:
<br>
<br>static const int testvar=200;
<br>
<br>};
<br>
<br>
<br>std::cout << base.getval() << std::endl;
<br>
<br>std::cout << child.getval() << std::endl;
<br>
<br>
<br>
<br>Proc se mi pri volani getval() na obou objektech
<br>vraci vzdy 100 ?
<br>
<br>Mate nejaky odkaz na pekne vysvetleni jak to s tim dedenim zde je ?
<br>Jsem jenom tak ovlivnen od jinych jazyku, nebo je to s temi tridami v c++
<br>takove nejake divne, az hnusne ? ;-)
<br>
<br>Diky predem.
<br>
<br>s přáním hezkého dne / best regards
<br>Tomáą Chvátal
<br>tchvatal@fordiag.cz
<br>
<br>_______________________________________________
<br>HW-list mailing list  -  sponsored by www.HW.cz
<br>Hw-list@list.hw.cz
<br>http://list.hw.cz/mailman/listinfo/hw-list
<br>
<br>_______________________________________________
<br>HW-list mailing list  -  sponsored by www.HW.cz
<br>Hw-list@list.hw.cz
<br>http://list.hw.cz/mailman/listinfo/hw-list 
<br>
<br>_______________________________________________
<br>HW-list mailing list  -  sponsored by www.HW.cz
<br>Hw-list@list.hw.cz
<br>http://list.hw.cz/mailman/listinfo/hw-list
<br></blockquote></body></html>