Delegate tanımlama şekilleri

Bir olay gerçekleştiğinde birden fazla fonksiyonu çağırmak istediğinizi düşünelim. Örneğin kullanıcı bir düğmeye tıkladığında birden fazla method’un otomatik olarak çağrılmasını istiyorsunuz. Bunun için delagate kullanabilirsiniz. Burada amaç şu. Bir olay olduğunda birden fazla yere bu olayı bildirebilmek. Bu olay ile ilgilenler delegate ile olaydan haberleri olur.
delagate olarak bir method tanımlanır. Bu method aslında temsilcidir. Bir olay olduğunda siz delegate method’unu çağrırsınız. delegate method’una kendisini ekleyen method’lar otamatik olarak çağrılırlar.
Tanımlama 1

delegate double CalArePointer(int r);
static CalArePointer cpointer = CalculateArea;
static void main(string[] args)
{
    double area = cpointer.Invoke(20)
}
static double CalculateArea(int r)
{
    return 3.14 * r * r;
}
//Çıktı:1256.0

Tanımlama 2

delegate double CalArePointer(int r);
static void main(string[] args)
{
    CalAreapointer cpointer = new CalArepointer (
                                                delegate(int r){
                                                    return 3.14 * r * r;
                                                    }
                                                )
    double area = cpointer(20);
}
//Çıktı:1256.0

Tanımlama 3

delegate double CalArePointer(int r);
static void main(string[] args)
{
    //Lamda Expression
    CalAreapointer cpointer = r => 3.14 * r * r;
    double Area = cpointer(20);
}
//Çıktı:1256.0

Tanımlama 4

static void main(string[] args)
{
    //Lamda Expression
    Funccpointer = r => 3.14 * r * r;
    double Area = cpointer(20);
}
//Çıktı:1256.0

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s