Formální parametry
- třídy, metody a funkce by měli obsahovat doxygen komentáře a ze souborů by měla být vytvořena doxygen dokumentace.
- zdrojový kód, komentáře i dokumentace by měla být napsána v angličtině
- dodržení standardů zdrojového kódu.
- použití pouze C++ výrazů a knihoven, pokud možno žádné C alokace a uvolnění paměti a použití C++ proudů.
- objekty a metody by po sobě měly uvolnit veškerou paměť
- důsledné dodržování principu zapouzdření. (co má být private, ať je private)
Úkolem by mělo být implementovat šablonovou knihovnu reprezentující datovou strukturu. A k této šabloně vytvořit ukázkový program. Je doporučeno se inspirovat šablonami ve standardní knihovně např. vector.
- Parametrem šablony by měl být typ prvku obsaženého v datové struktuře.
- Šablona by měla obsahovat iterátor pro procházení datové struktury.
- Smysluplné použití přetypování operátorů je vítáno.
- Využití vlastností jako je specializace šablon a šablonové meta-programování je též vítáno.
- Tam kde je potřeba vyvolat vyjímku, nechť se tak stane - definujte si na to vlastní třídu.
- Definujte kopírovací konstruktor.
- Destruktor nutný
- binární strom
- obousměrná fronta
- asociativní tabulka (hash tabulka)
- řídká matice
- matice
- množina
- vektor z lineární algebry a k němu vektorový obal
- apod..
- šablona, která dostane za parametr funkci a zapamatuje si n parametrů a návratových hodnot funkce a při opakovaném volání se stejnými parametry ihned vrátí návratovou hodnotu funkce, bez jejího samotného volání. + k tomuto úkolu napsat webovou stránku, jak to funguje. (nezaručuji, že lze implementovat)
Žádné komentáře:
Okomentovat