na obsah klávesové zkratky na hlavní stránku na menu

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.

Doplňte do třídy Matice statickou metodu 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é.