Son Haberler
Anasayfa / Yazılım / C# / Delegates – Delegeler (Delegasyonlar – Temsilciler)

Delegates – Delegeler (Delegasyonlar – Temsilciler)

Delegeler (Delagates) aslında bir nevi işaretçi olarak tanımlanabilirler çünkü metotlara aracılık eder ve onları temsil etmektedirler,yani onların referanslarıdır. Çalışma zamanında tanımlanan ve metotlara erişilmesini sağlayan yapılardır. Bellek üzerinde özel bir alanda tutulurlar ve metotları bellek üzerinde adreslerler. Bu adresler bir anlamda metotların yerini işaret ederler diyebiliriz.

Delegeleri bildirmek için delegate anahtar sözcüğü kullanılmaktadır. İçeriği olmayan bir metot gibi tanımlanmaktadır. Örnek olarak tanımlamalar :

delegate int MyDelegate();
public delegate void MyDelegate(string mesaj);

Delegelerin temel olarak çalışma amacı derleme zamanında belli olmayan metotları çalışma zamanında belirtmektir. Buna ek olarak delegelerin kullanıldığı ve gerçek anlamda en çok ihtiyaç olduğu alan eventlerdir. Bir olay gerçekleştiği zaman hangi metotlar çağırılacak ise bunlar delegelere eklenir. Aslında delegeler olaylar ile anlam kazanmaktadır diyebiliriz.

Bir delege aynı zamanda birden fazla metota temsilci olarak atanabilir. Yani bir delegeyi bir çok metot için kullanabiliriz. Buna multicasting yani çoklu delege denilmektedir. Delegelerin listesine yeni bir metot eklerken ?+=? çıkarırken ise ?-=? operatörleri kullanılır.

Bunlarla alakalı bir örnek yapar isek :

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir