Ez mit csinál? Return long (k) ; //C++
A k egy változó a long meg egy beépített típus.
A tippem:
A függvény visszatérési értékét két helyen meg lehet adni a függvény neve előtt és a return után.
Ki tudnátok fejteni ezt,kicsit bővebben?
Azt tudom,hogy ez explicit típuskonverzió: (long)k;
És ez akkor mi: long(k) ; Olyan mint ha a long egy függvény volna aminek át adom a k változót.
Ha C++-al foglalkozol, biztos hallottál már a konstruktor fogalmáról. A konstruktor (C++-ban) egy olyan függvény, aminek nincs visszatérési értéke (még csak nem is void), és a neve megegyezik a típus nevével. Bár szigorúan véve valószínűleg nincs olyan függvény kód, ami a long() konstruktorhívásnak megfelelne, ettől függetlenül szemantikailag a beépített típusoknak is létezik konstruktora. A templatek előszeretettel használják a T() formát, ami ha T long akkor long()-ra helyettesítődik be, ami 0L.
Szóval ez egy explicit konverzió, a szelídebbik fajtából. És semmi köze a visszatérési értékhez, bárhol szerepelhet ez a kifejezés, ahol a k szerepelhetne, és longot elfogad.
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!