Ondalıklı türler
double, float ve decimal türlerini ve hassasiyet farklarını öğrenirsin.
Başvuru türleri
Başvuru türleri veriyi doğrudan değil, bir başvuru (adres) üzerinden tutar. string ve object C#'ın temel başvuru türlerindendir.
Bu türler heap (yığın bellek) bölgesinde saklanır; değişkende yalnızca verinin adresi bulunur. İki değişkeni atadığında adres kopyalanır, yani her ikisi aynı veriye işaret eder.
Boş bir başvuru null ile belirtilir. Büyük verilerde kopyalama maliyetini azalttığı için başvuru türleri verimlidir.
object türü
object, C#'ın kök türüdür; her değeri tutabilir. Bir int, string ya da bool değerini object'e atayabilirsin.
Değer türünü object'e atadığında boxing (kutulama) gerçekleşir: değer heap'e kopyalanır ve başvuru oraya bağlanır. Örnek: object box = 42;
Geri alırken türü açıkça belirtmen gerekir: int n = (int)box;. Bu işlem unboxing olarak adlandırılır ve sonraki derste ayrıntılı işlenir.
Uygulama string ve object yazdır
Bir string name değişkenine "Ayşe" ata. Bir object data değişkenine 100 ata. Sonra her ikisini Console.WriteLine ile kendi satırına yazdır.
Örnek çözümü göster
string name = "Ayşe"; ve object data = 100; yaz, sonra Console.WriteLine ile yazdır.
Örnek çözüm:
using System;
class Program {
static void Main() {
string name = "Ayşe";
object data = 100;
Console.WriteLine(name);
Console.WriteLine(data);
}
}
Kendini test et
-
Türü bellek bölgesine eşle
- string
- metin (heap)
- int
- tamsayı (stack)
- object
- her tür (heap)
- bool
- mantık (stack)
-
Hangisi bir başvuru türüdür?
- int n = 5;
- bool ok = true;
- string s = "merhaba";
- char c = 'X';
Cevabı göster
string s = "merhaba"; — Doğru! string bir başvuru türüdür ve heap'te saklanır.
-
object değişkenine int ata
object box = ____;Cevabı göster
object box = 42;