Implicit módon beírt helyi változók deklarálása

Befejeződött

A C#-fordító a színfalak mögött dolgozik, hogy segítséget nyújtson a kód írásakor. Képes az inicializáláshoz használt értékből kikövetkeztetni a változó adattípusát. Ebben a leckében ezzel a szolgáltatással, a helyi változók implicit típusmeghatározásával ismerkedhet meg.

Mik az implicit típusmeghatározású helyi változók?

Az implicit módon beírt helyi változót a var kulcsszóval, majd egy változó inicializálásával hozza létre a rendszer. Példa:

var message = "Hello world!";

Ebben a példában egy sztringváltozó lett létrehozva a var kulcsszó helyett a string kulcsszó használatával.

A var kulcsszó tájékoztatja a C#-fordítót, hogy az adattípust a hozzárendelt érték feltételezi . A típus vélelmezése után a változó ugyanúgy működik, mintha a tényleges adattípust használták volna deklarálásához. A var kulcsszó a billentyűleütések mentésére szolgál, ha a típusok hosszadalmasak, vagy ha a típus nyilvánvaló a környezetből.

A példában:

var message = "Hello world!";

Mivel a változó message azonnal az string értékre "Hello World!"van állítva, a C#-fordító megérti a szándékot, és minden példányt message típuspéldányként stringkezel.

A változót valójában a rendszer a string változóként írja be, message és soha nem módosítható. Vegyük például a következő kódot:

var message = "Hello World!";
message = 10.703m;

A kód futtatásakor a következő hibaüzenet jelenik meg.

(2,11): error CS0029: Cannot implicitly convert type 'decimal' to 'string'

Feljegyzés

Más programnyelvek másként használják a var kulcsszót. A C#-ban a változók típust rendelnek a fordítóhoz, függetlenül attól, hogy a tényleges adattípusnevet használja-e, vagy engedélyezi a fordító számára az adattípust. A típus tehát a deklarációkor rögzítve lesz, ezért soha nem lesz alkalmas más adattípusú értékek tárolására.

A kulcsszót var használó változókat inicializálni kell

Fontos tudnivaló, hogy a var kulcsszó a változó inicializálására használt értéktől függ. Ha a var kulcsszót a változó inicializálása nélkül próbáljuk használni, a kód fordításakor hibaüzenetet kapunk.

var message;

Ha megkísérli futtatni ezt a kódot, a fordítás során a következő kimenet jelenik meg:

(1,5): error CS0818: Implicitly-typed variables must be initialized

Miért érdemes a var kulcsszót használni?

A var kulcsszó széles körben elterjedt a C# közösségben. Valószínű, hogy ha egy könyvben vagy online egy kód példáját látja, a var tényleges adattípus neve helyett a használt kulcsszót fogja látni, ezért fontos megérteni a használatát.

A var kulcsszónak fontos szerepe van a C#-ban. A változó típusa sokszor nyilvánvaló az inicializálásából. Ezekben az esetekben egyszerűbb a kulcsszó használata var . A var kulcsszó az alkalmazás kódjának tervezésekor is hasznos lehet. Amikor elkezd kódokat fejleszteni egy feladathoz, előfordulhat, hogy nem tudja azonnal, hogy milyen adattípust kell használnia. A használat var segíthet a megoldás dinamikusabb fejlesztésében.

Első lépésként javasoljuk, hogy a változók deklarálásakor továbbra is használja a tényleges adattípusnevet, amíg a kód használata kényelmesebbé nem válik. Az változók konkrét adattípussal történő deklarálása segít a kód célratörő megírásában.

Összefoglalás

A kulcsszóról eddig az alábbiakat var tanulta:

  • A var kulcsszó arra utasítja a fordítót, hogy a változó adattípusát az inicializáló érték alapján határozza meg.
  • A kulcsszó valószínűleg más személyek kódjának olvasása közben jelenik var meg, azonban ha lehetséges, használja az adattípust.