String Benzeri Tip Oluşturmak

Yazdır Geri Düşür Yükselt

Muhtemelen düşünmüşsünüzdür.

String Deger="Nihat DEMİRLİ"; Bu satır C# tarafından neden kabul edilmektedir. Aynı şekilde tam sayı tipli bir değer nasıl oluyorda bu değişkenlere aktarılabiliyor. Bu soruna yanıt aramak için öncelikle aşağıdaki kodlamaya dikkat etmenizi istiyorum.

 

class Metin
    {
        public Metin(string Veri)
        {
            Degerim = Veri;
        }
        private
string Degerim = "";
        public override string ToString()
        {
            return Degerim;
        }

        public static implicit operator Metin(string Deger)
        {
            Metin Sonuc = new Metin(Deger);
            return Sonuc;
        }
        public static implicit operator string(Metin Deger)
        {
            return Deger.Degerim;
        }
    }

 

Yazdığımız sınıfı uygulamadan tetikleyerek sonucu göstermek istiyorum.

 

private void button1_Click(object sender, EventArgs e)
        {
            Metin Yeni = "Sinan Efendi";//Bu satır Metin isimli static operator tanımından dolayı yazılabilir.
            this.Text = Yeni.ToString();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Metin Yeni = "Sinan Efendi";
            this.Text = Yeni;//Bu satır static string operator tanımından dolayı yazlabiliyor.
        }

Biraz dahada geliştirelim.

private void button3_Click(object sender, EventArgs e)
        {
            Metin Yeni = "Sinan Efendi";
            Metin Eski = "Engin Efendi";
            Metin Son = Yeni + "-" + Eski;
            this.Text = Son;//Sinan Efendi-Engin Efendi Yazar
        }

Görüldüğü gibi bizde aynen string tip gibi kullanılabilen bir Class yazmış olduk.

 

Nihat DEMİRLİ

Zirvedeki Beyinler | String Benzeri Tip Oluşturmak