Vianoce v ITnetwork sú tu! Dobí si teraz kredity a získaj až 80 % extra kreditov na e-learningové kurzy ZADARMO. Zisti viac.
Hľadáme nové posily do ITnetwork tímu. Pozri sa na voľné pozície a pridaj sa k najagilnejšej firme na trhu - Viac informácií.

Diskusia – 9. diel - Statika v C ++

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Tomm
Člen
Avatar
Tomm:15.2.2020 2:39

všiml jsem si že je tu:bool existujeVitaz(); v minulých lekcích bylo bool existujeVitez();

 
Odpovedať
15.2.2020 2:39
Avatar
Zdeněk Dvorský:23.12.2022 17:43

Protože se často jedná o zdroj chyb, rychlé zopakování: konstantní statické atributy musí být inicializované v .h souborech, zatímco pouze statické atributy musí být inicializované v .cpp souborech.

A jak se inicializuji statické konstantní atributy typu double nebo float ?

static const double PI = 3.14159;

Pokud se pokusím o inicializaci v .h - nahlásí to chybu -že const double nemůže mít inicializátor ve třídě. No a v .cpp to inicializovat rovněž nejde.

Ve třídě .h by to šlo inicializovat pouze tehdy pokud bych změnil typ na int což mi nevyhovuje.

Jak postupovat? Díky

 
Odpovedať
23.12.2022 17:43
Avatar
Zdeněk Dvorský:23.12.2022 17:51

Už vím. pro jiné typy než int je potřeba použít constexpr. Čili takto:

static constexpr double P_I = 3.14159;
 
Odpovedať
23.12.2022 17:51
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!