C# 3.0 ile birlikte implicit-typed (örtülü tip) olarak nitelendirdiği “var” anahtar kelimesini tanıttı. Var anahtar kelimesi direk olarak bir tipi temsli etmez. Var değişkenin tipi derleme zamanı esnasında atanan value’nun tip yapısına bürünür.
Örneğin, aşağıdaki string tipinde tanımladığımız değişkene yalnızca değeri string olan bir value atanabilir.
string message = "Merhaba";
Ayrıca string tipinde ki mesaj değişkeninin tipini değiştiremeyiz. Çünkü message tipi explicit-type’dır. (tipi açık bir şekilde belirtilmiştir.)
Aşağıda ki örneğimizde ise değişken bildirimi olarak explicit type olan string yerine implicitly type olan var tipini kulandık:
var message = "Merhaba";
Var anahtar sözcüğünü tekrar hatırlayacak olursak direk olarak özel bir değişken türünü işaret etmez. Derleme zamanı esnasında atanan value’nun tipine bürünür. Derleyici tipi belirledikten sonra var değişkeni belirlenen tip gibi davranır ve sabittir (tipi değiştirilemez).
Yukarıda ki örneği göz önüne alacak olursak artık var message değişkeni bir string değişken gibi davranacaktır. Var message değişkeni üzerinden string değişkeni üzerinden kullanabileceğiniz tüm özellikleri, metotları kullanabileceksiniz.
var message = "Merhaba";
string messageUpper = message.ToUpper();
Ayrıca tip sabittir (değiştiremezseniz). Örneğin ilk atamayı string olarak atadığınız zaman bu değişkeni int olarak kullanamazsanız.
var message = "Hi";
message = 100; // hata
Son olarak var değişkeni bir atama işlemi olmadan tanımlanmaya izin vermez. Örneğin:
var amount;
Yukarıda ki şekilde tanımlama yapamazsanız. Size aşağıda ki hatayı verir.
Implicitly typed variables must be initialized
One comment
Comments are closed.