CodeBlanks Logo Icon CodeBlanks

Ondalıklı türler

C# kursu · Başlangıç · Ders 14/116

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

  1. Türü bellek bölgesine eşle

    string
    metin (heap)
    int
    tamsayı (stack)
    object
    her tür (heap)
    bool
    mantık (stack)
  2. 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.

  3. object değişkenine int ata

    object box = ____;
    Cevabı göster
    object box = 42;

Başlangıç bölümündeki tüm dersler