Příklad v c++ – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Příklad v c++ – C / C++ – Fórum – Programujte.comPříklad v c++ – C / C++ – Fórum – Programujte.com

 

Petr
~ Anonymní uživatel
746 příspěvků
19. 12. 2010   #1
-
0
-

Dobrý den,
mám problém s tímto příkladem:

Máme třídu Zboží. Třída dále obsahuje neveřejné atributy zaznamenávající dobu přepravy a váhu samotného nákladu (celočíselné hodnoty). Dále máme třídu Potravina, která je potomkem Zboží. Třída Potravina obsahuje navíc neveřejné atributy určující dobu skladování v dozrávacím skladu a maximální dobu přepravy. Údaje jsou zadány pomocí parametrických konstruktorů.
Kontejner obsahuje v neveřejných atributech svoji váhu (celočíselná hodnota) identifikační číslo (textový řetězec) a odkaz na zboží, které je v něm uloženo. Pokud vznikne kontejner, musí mu být vytvořeno zboží nebo potravina, která je v něm uložena (řešte pomocí dvou konstruktorů). Pokud je kontejner zrušen, musí být zrušen i jeho obsah. Kontejner má metody VratDobuCesty() a VratVahu().
Platí následující: Metoda VratDobuCesty vrací pouze hodnotu doby přepravy, pokud je jedná o zboží. Pokud se jedná o potravinu, vrací délku cesty a délku skladování. Metoda VratVahu vrací váhu kontejneru a váhu nákladu. Pokud potřebujete k nějaké hodnotě v atributu přístup, vytvořte si příslušnou metodu.


Moje řešení:
http://pastebin.com/dgYZGNg1
nevím jak to dodělat ten konec VratDobuCesty() a VratVahu()....

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

Asi nejlépe řešit přes virtuální funkce, které budou polovinu problému řešit za tebe. V implementaci Zbozi bude funkce vracet dobu přepravy a v Potravina součet těch dvou hodnot. Analogicky to budu i u té druhé funkce.

Nahlásit jako SPAM
IP: 78.80.52.–
Petr
~ Anonymní uživatel
746 příspěvků
20. 12. 2010   #3
-
0
-

@Liborb: prosim, mohl by jsi to zakomponovat do toho mojeho příkladu a poslat hodit to sem? Díky

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

Pro Zbozi:

virtual int vratDobuCesty() {

return(dobaPrepravy);
}


Pro Potravina:
virtual int vratDobuCesty() {

return(maxDP + dobaSkladovani);
}


a v Kontejneru:
int vratDobuCesty() {

return(ulozeneZbozi->vratDobuCesty());
}

Nahlásit jako SPAM
IP: 78.80.52.–
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, 10 hostů

Podobná vlákna

Příklad v C++ — založil squirrel

Příklad — založil uzi

Příklad — založil anonim

Příklad — založil Ovladač

Příklad — založil uzi

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ý