Diskuze: 300 je typu float?
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 5 zpráv z 5.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
To vím, jsem právě očekával, že to nevezme jako byte. Ale myslel jsem, že to vezme např. jako object (jako to vzal u bool a jako by to vzal floatu nebo doublu, kdybych ty metody s parametrem doublu nebo floatu odstranil).
Chápu tedy dobře, že se to nejdřív snažilo konvertovat na nějaký primitivní datový typ, který je parametrem některé z metod, a pokud to takovou metodu nenajde, tak použije metodu s parametrem Object?
Nebo tedy ještě jináč, to co jsi použil je docela nebezpečná
konstrukce. Totiž více přetížených metod,které se liší pouze
rozdílnými datovými typy u stejného parametru-když je mezi těmi typy
možná automatická konverze,tam snadno může vzniknout chyba na kterou jsi
narazil. Čili se tomu pokud možno vyhnout a nebo to pořádně promyslet,
ošetřit a otestovat.
Viz jak píše spraveně píše Paradise- do byte se ti 300 nevejde, čili
program použil nejbližší možnou metodu s float.Ale je to ještě
složitější, můžeš si zkusit zaexperimentovat-dejme tomu zavolat Ahoj(15)
ve 3 případech :
a uvidíš že ti pokaždé vypíše naprosto jiný typ. Vítej do klubu..
Zobrazeno 5 zpráv z 5.