Milyen változóelnevezési stratégiát használsz?
Hátrább az agarakkal, kollega!
A getchar() két okból tér vissza int-el. Mivel bármelyik architektúrán az int a leggyorsabb típus. Érdekes módon a bool is 4-8 bájtos változó, platformtól függően. És senki sem garantálja, hogy egy karakter 1 byte-os. Egy karaktert egyetlen bájtként kezelni hiba.
Maga a char valóban 1 bájtot jelent minden platformon.
A felfele kasztolásokra azért nem kell warning, mert ebben az esetben nem történhet információ vesztés. Lefelé, vagy előjelváltás esetén a fordító jelzi, hogy valamire nem figyeltél oda, és amit csinálsz potenciális hibaforrás. Ha biztos vagy a dolgodban explicit kasztolod, jelezve, hogy ura vagyok a helyzetnek.
A típusváltozás natív nyelveknél mindig kasztolással jár. Pontosan ezért mert erősen tipusosak. Egy gyengén típusos script nyelv megengedi, hogy egy értékadás után a változó más típusú legyen. Ezért szorgalmazzák az oktatóanyagokban, hogy ne használjuk újra a változóinkat mert félrevezető lehet.
Az egyetlen szürke terület a C++ típusossága terén, pedig a virtuális metódusok. Ahol futás időben a vtable-ből derül ki, hogy melyik metódust kell hívnunk. Ez a polimorfizmus megvalósításának egyetlen módja. Meglepő a módon a gyengén típusos script nyelvek nagyon hasonló analógiára épülnek.
Alacsony szinten nyilván történik valami kasztolás a szkriptnyelvben is.
A late-bindingot pedig ne keverd ide.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!