C# İle Var Anahtar Kullanımı


28 Eylül 2012 Hikmet Okumuş C#

Var anahtarı, değişken tanımı yaparken tür belirtmeksizin tanım yapmamızı sağlamaktadır. Var ile tanımlanan bir değişkene atanan ilk değer program derlendiği anda değişkenin veri türünü belirlemektedir.
Örnek olarak aşağıda bir değişken tanımlanmış ve string bir değer ataması yapılmıştır. Derleme anına kadar değişken türü belli değildir. Derlendiğinde değişken string veri türüne dönüşecektir.
var Isim = "Hikmet Okumuş";
Yukarıda var ile yapılan işlem aynı şekilde object ile de yapılabilmektedir. Örnek;
object Isim = "Hikmet Okumuş";
Peki 2 yapı arasındaki fark nedir ? Object ile tanımlanan bir değişkene farklı türlerde değer atanabilmektedir. Örnek;
            object Isim;
            Isim = "Hikmet Okumuş";
            Isim = 10;
            Isim = true;
Örnekte görüldüğü gibi aynı değişkene sırasıyla string, int ve bool değer türlerinde veriler atanmıştır. Ve derleme işlemi düzgün bir şekilde yapılacaktır. Fakat bu durum var ile tanımlanan bir değişken için geçerli değildir. Çünkü var ile tanımlı bir değişkene atanan ilk değer o değişkenin veri türünü oluşturacaktır ve sonrasında farklı veri türünde bir değer atanmak istenildiğinde derleme hatası verecektir.
            var Isim = "Hikmet Okumuş";
            Isim = 10;
Yukarıdaki örneği derlemek istediğimizde Cannot implicitly convert type 'int' to 'string' hatasını verecektir.

Başarılar dilerim.



Kullanıcı Yorumları

hikmet okumuş makale yorum
Mehmet Sönmez
9/16/2017 2:30:39 PM

Var İle Object Arasindaki Tek Fark
Object'in Değerinin Sonradan Değiştirilebilmesimi?

hikmet okumuş makale yorum
Hikmet Okumuş
9/17/2017 12:42:49 AM

Merhaba Mehmet Sönmez,

Aşağıdaki makalede tiplerin karşılaştırma tablosu mevcut. Buradan sorunun cevabını alabilirsin.

http://www.c-sharpcorner.com/UploadFile/ff2f08/object-vs-var-vs-dynamic-type-in-C-Sharp/



Yorum Ekle