NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.

Diskuze – Lekce 4 - Destruktory a aplikace konstruktorů v C++

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Ondřej Čoček:10.5.2018 13:02

Dobrý den, chtěl bych jenom dodat, že destruktor pro první kostku se přece nevykoná tak jak máte uvedeno ve výpisu, jelikož k němu buď to nedojde vůbec po ukončení programu příkazem return 0; nebo se vykoná na pozadí po skončení programu, ne?
Děkuji

 
Odpovědět
10.5.2018 13:02
Avatar
Odpovídá na Ondřej Čoček
Patrik Valkovič:10.5.2018 14:18

Destruktor se volá vždy a to v okamžiku skončení platnosti proměnné. Například platnost parametrů funkce končí její zavírací složenou závorkou. Stejně je to tady. Tím, že se funkce ukončí, skončí platnost všech proměnných ve funkci definovaných a jsou destruovány.

Odpovědět
10.5.2018 14:18
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Marek Zelený
Tvůrce
Avatar
Marek Zelený:8.7.2019 16:04

V sekci Konstruktor pro inicializaci je v první ukázce souboru Kostka.h definovaná metoda roll(), ale v souboru Kostka.cpp je metoda hod() - chybí překlad :)

 
Odpovědět
8.7.2019 16:04
Avatar
Odpovídá na Marek Zelený
Patrik Valkovič:8.7.2019 16:07

Díky, opraveno.

Odpovědět
8.7.2019 16:07
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Cunnedda
Člen
Avatar
Cunnedda:7.1.2022 18:43

Není zcela jasné, jak funguje vztah mezi srand() a rand() a proč je srand() použit právě tam, kde je. Proč když použiji funkce srand() v konstruktoru, tak najednou funkce rand() vygeneruje jiná čísla?

 
Odpovědět
7.1.2022 18:43
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Cunnedda
DarkCoder:7.1.2022 19:38

Jak spolu souvisí funkce srand() a rand()?

Funkce srand() nastavuje počáteční hodnotu seedu na hodnotu, kterou funkce rand() používá ke generování "náhodných" čísel. Pokud není volána funkce srand() před prvním voláním funkce rand(), pak je to stejné, jako by se volala funkce srand() následovně: srand(1) a nastavila se tak počáteční hodnota seedu na jedničku.

Odpovědět
7.1.2022 19:38
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.