Nejčastější chyby v DU 2 - 2D pole





Základní definice třídy (konstruktory, destruktory, komentáře DOXYGEN)

- dodržujte povinná jména souborů a proměnných

- po odalokování označte pole jako odalokované.

- konstruktor se dvěma parametry měl mít druhý parametr s implicitním přiřazením, aby mohl být použit i jako konverzní při zadání jednoho parametru

- složitější metody (alokuj, odalokuj, z cykly ...) by měly být v cpp a ne jako inline v hlavičkovém souboru

- neposílejte html komentáře vytvořené pomocí doxygen. Pošlete konfigurační soubor (doxyfile), vytvořím si dokumentaci sám.

- pro způsob a požadovanou kvalitu komentářů se inspirujte v http://www.uamt.feec.vutbr.cz/~richter/vyuka/1213_ppc/kppc/komplex.zip



Úvodní program



Odevzdávejte jen požadované soubory, není-li řečeno jinak, potom jsou to *.cpp *.c a *.h



Standardní ošetření hlavičky se má uvádět v každém hlavičkovém souboru, začíná co nejblíže začátku a končí (co nejblíže) na konci (hlavičkového souboru). Veškerý text by se měl nacházet v takto ohraničeném úseku.



Pokud je předepsán kód, měl by být využit celý. (Plně) předepsané hlavičky funkcí by neměly být modifikovány.



Je nutné odalokovat vše co bylo naalokováno (každý alloc/new/fopen má své free/delete/close). Pokud dojde k chybě během alokace, musí se zařídit odalokování již naalokovaného.



Na vstupu každé funkce by měla být kontrola, zda je matice naplněna a zda je možné s ní (s nimi) pracovat (zda obsahuje data a není v chybovém stavu).



Při práci je nutné rozlišovat, kdy se pracuje s MUJTYP (prvky pole a činnost s nimi) kdy s int (ostatní proměnné). Správnost je vhodné zkusit překladem s jiným MUJTYPem.



Při aplikace knihovny check je nutné ji zavést tuto knihovnu do všech modulů programu, jinak nefunguje správně.



Pro přístup do pole přes "tři hvězdičky" je nutné kvůli prioritě použít (*mat)[i][j]
- rozbor obrázku - způsob alokace - přístup - odalokování



- zjistěte si, co znamená následující zápis

typedef struct matice

{

MUJTYP** data;

int x;

int y;

} matice;



Sledujte warningy - označují místa, na která byste měli soustředit pozornost



Před dělením testovat dělení nulou



Program pokračování 3



- K dokumentaci/komentářům není nutné posílat/odevzdávat soubory htm, pdf ... a jejich adresáře. Dokumentace se dá vygenerovat ze zdrojových souborů, takže je zbytečné posílat dokumentaci dvakrát (byť v jiné formě). Buďto tedy neposílejte z vygenerované dokumentace nic, nebo pošlete pouze konfigurační soubor k doxygen (v něm je například hlavní nadpis projektu, který se zobrazuje nahoře v dokumentaci).

- doxygen generuje chyby - čtete je a opravte (je možné je vidět při překladu v konzole ("černé okno"). Pokud máte doxygen zaintegrovaný v tools menu ve VC, je zde možnost zapnout výstup do Output okna prostředí VC).

- v doxygen se komentuje - soubor, třída, (pomocné) proměnné, metody. Komentovat se dá ve krátce (brief) tyto položky se zobrazují v přehledových sekcích, nebo detailně - tyto položky se zobrazují při úplném popisu.

- dává se přednost komentování dokumentace na jednom místě - nejčastěji v hlavičce

- friend umožní přístup k privátním prvkům – nečlenské funkce a operátory

- používat reference v parametrech vždy (pokud nepotřebujete kopii), v návratové hodnotě vždy když je to možné

- složitější metody by měly být v cpp souboru – jinak jsou inline, což není vhodné z hlediska narůstání velikosti programu















Poslední změny 2012-12-01