Dědění – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Dědění – C / C++ – Fórum – Programujte.comDědění – C / C++ – Fórum – Programujte.com

 

opoke
~ Anonymní uživatel
4 příspěvky
2. 2. 2010   #1
-
0
-

mam dotaz vytvorim si nejakou tridu kde mam nejakou promenou se kterou delam nejakou pocetni operaci(+) pak vytvorim tridu zděděnou pomoci (public) a v te chci pouzivat promenou z te puvodni tridy a pouyivat na jinou operaci(-)... jak k ni mam pristoupit??

Nahlásit jako SPAM
IP: 77.48.244.–
liborb
~ Redaktor
+18
Guru
2. 2. 2010   #2
-
0
-

Proměné definuješ přístupové právo protected a pak k ní můžeš přistupovat přímo.

Nahlásit jako SPAM
IP: 85.207.166.–
opoke
~ Anonymní uživatel
4 příspěvky
2. 2. 2010   #3
-
0
-

To liborb : se chci jenom zeptat kdyz vytvorim normlani metodu tak k ni muzu pristupovat jak pomoci te puvodni nebo te děděné pokud je vytvořena v té hlavní třídě ale když sem zkusil přetížit nějaky operator tak to můžu přistupovat k tomu operatoru jenom s tridou kde byl vytvoreny??? me to jinak nejde

Nahlásit jako SPAM
IP: 77.48.244.–
liborb
~ Redaktor
+18
Guru
2. 2. 2010   #4
-
0
-

Jestli můžeš, dej sem příklad toho, co ti jde a co ti nejde. Snažil jsem se :smile1: , ale z toho tvého popisu jsem úplně přesně nevyrozuměl, kde je problém.

Nahlásit jako SPAM
IP: 85.207.166.–
opoke
~ Anonymní uživatel
4 příspěvky
2. 2. 2010   #5
-
0
-

To liborb : no treba jak by si chtel dat tapa= tapa*tapa; tak to vypise chybu ( a nevim proc kdyz jine metody z te tridy v pohode udela]

Nahlásit jako SPAM
IP: 77.48.244.–
liborb
~ Redaktor
+18
Guru
2. 2. 2010   #6
-
0
-

Tak tapa = tapa * tapa; udělat nemůžeš, protože nemáš pro třídu Vektor přetížený operátor *. Ten sis přetížil z nějakého (pro mě těžko pochopitelného) důvodu až v synovské třídě Dedic, pro kterou to můžeš používat a taky to funguje. Pokud to chceš používat i pro Vektor, tak musíš ten operátor přetížit již ve Vektor.

Nahlásit jako SPAM
IP: 85.207.166.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
2. 2. 2010   #7
-
0
-

To liborb : ja už sem z toho zmateny ten operator * sem teda dal do te zakladni tridy ale pak sem vztvoril objekt pomoci te zděděné tak např. jedna= jedna * jedna a napsalo to nějakou chybu ...

Nahlásit jako SPAM
IP: 77.48.244.–
liborb
~ Redaktor
+18
Guru
3. 2. 2010   #8
-
0
-

A znovu zopakuji otázku: proč to resp. o co se snažíš? Proč se snažíš (trochu nesmyslně) rozdělit operátory do základní a dceřiné třídy?

A pro příště by nebylo od věci napsat jakou chybu to hlásí.

Ber to tak, že co třída co jiný "datový typ". Když nadefinuješ násobení v základní třídě a násobíš instance zděděné třídy, tak výsledkem bude "typ" základní třídy. Pak je tam přiřazení a najednou se "míchají typy". A přetypovat Dedic na Vektor lze implicitně, ale opačně je to horší. Na to musíš napsat konstruktor třídy Dedic, co bude mít parametr Vektor atd. atd.

Prostě si zbytečně přiděláváš starosti viz moje otázka ...

Nahlásit jako SPAM
IP: 85.207.166.–
opoke
~ Anonymní uživatel
4 příspěvky
3. 2. 2010   #9
-
0
-

To liborb : j díky za vyvětlení (no a otázka Proč se snažíš (trochu nesmyslně) rozdělit operátory do základní a dceřiné třídy? protože sem si myslel že dědičnost je pro nějake rozšíření programu tak abych nemusel zasahovat do toho předchozího tak sem se snažil udělat jednu pro násobení a druhou pro sčítání a neuvědomil jsem si že to sou jiné typy...

Nahlásit jako SPAM
IP: 77.48.244.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 107 hostů

Podobná vlákna

Dědění — založil Yety

Vysvětlení dědění — založil felix

Dedeni a objekty — založil advanced

Dědění java konstruktory — založil elix

OOP - Dedeni s vice tridama — založil Ruda

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý