Páté cvičení – základy dědičnosti
Dědění představuje jeden ze základních stavebních kamenů objektového programování. Na tomto cvičení jsme zmínili základy dědičnosti a přístupových práv v C++. Ukázali jsme si, jak lze různá práva kombinovat a jaký je očekávaný výsledek. Statické datové složky a metody najdou specifická uplatnění v různých situacích. Na cvičení jsme se proto zmínili o klíčovém slovu static.
Obsah cvičení
Na tomto cvičení jsme nejdříve osvětlili problematiku použití klíčového slova static
, neboli vytváření statických složek tříd. Takové složky existují i tehdy, když není vytvořena žádná instance třídy.
Dědičnost je základní technikou objektově orientovaného programování. Umožňuje nám sdílení funkčnosti napříč různými, ovšem souvisejícími objekty. Na cvičení jsme si ukázali, jak přetížit třídu a jak lze omezit přístupová práva zapsáním private
, public
nebo protected
do deklarace třídy a před předka třídy.
nulovaMatice()
, která vrátí instanci nulové matice. Doplňte do třídy Řetězec statické metody prevedCislo()
pro převod celého a necelého čísla na řetězec. Metoda pro převod celého čísla obdrží jako vstupní parametr příslušné číslo a jeho bázi (8, 10 nebo 16), kde výchozí hodnota bude 10. Obě metody vrátí instanci třídy Řetězec s textovou podobou čísla. Pro převod čísla na řetězec použijte uvnitř vašeho kódu funkci snprintf()
. Přečtěte si pozorně dokumentaci k této funkci a zvláště pak to, co funkce vrací. Nealokujte více paměti, než je nezbytně nutné.