C# İle Var Anahtar Kullanımı

28.09.2012 Hikmet Okumuş 6994 2 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
16.09.2017 14:30:39

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

hikmet okumuş makale yorum
Hikmet Okumuş
17.09.2017 00:42:49

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