Diskuze: Struktury, třídy a jejich rozdíly
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Hlavním rozdílem v C++ je defaultní viditelnost členů (struct public, class private).
Měl jsem dojem, že tam snad ani jiný rozdíl není.
Prostuduj i dědění struktur a tříd. Souvisí to s tou výchozí viditelností.
Zrovna struktury řeším – definice (C#) by měla být:
TŘÍDY se používají k modelování složitějšího chování nebo dat – která mají být upravena po vytvoření objektu třídy.
STRUKTURY jsou vhodné pro malé, jednoduché sady dat (obsahují primárně data) - která nejsou zamýšlena jako modifikovaná po vytvoření struktury.
Rozdíly: struktura (na rozdíl od třídy) nemůže obsahovat bezparametrický konstruktor, destruktor, nemůže dědit ani od ní nemůže být děděno (nepoužívá „protected“), nemůže obsahovat virtuální metody, je alokována na zásobníku, může být inicializována i bez klíčového slova „new“.
Čemu nerozumím je, že „struktura nemůže mít inicializované vlastnosti“. Může prosím někdo dovysvětlit?
záleží na verzi jazyka C nebo C++. ty nepíšeš v jaký verzi ... ANSI C
? 98 ? 99 ? K&R ? ANSI C++ ??? a verze ? ECMA standard ???
struktura v dřívějších verzích nesměla obsahovat kod, ale jen data. mohla
obsahovat ukazatel na kod ale ten šel spustit jen jiným externím
spouštěčem - kodem, v posledních verzích je tohle zachovaný ALE ... např.
v C++/CLI muže i "ref struct" obsahovat kod stejně jako "value struct" ...
bohužel vývoj nezastavíš ...
chtělo by to nastudovat z knížek
https://www.programming-book.com
Zobrazeno 6 zpráv z 6.