C# 'da delegeleri kullanırken bir işlev STATIC yapmak neden gereklidir?Statik bir yöntemde kullanıldığında temsilci neden statik olmayan bir yönteme başvurmuyor?
class Program
{
delegate int Fun (int a, int b);
static void Main(string[] args)
{
Fun F1 = new Fun(Add);
int Res= F1(2,3);
Console.WriteLine(Res);
}
**static public int Add(int a, int b)**
{
int result;
result = a + b;
return result;
}
}
Bunu Main'dan statik bir bağlamda göndermeye çalışıyorsunuz? – captncraig
Sorunun önermesini inkar ediyorum; yöntemi statik yapmak için * gerekli değildir. Yöntemi başarıyla çağırmak için temsilci için yeterli bilgi sağlamak gerekir; Statik olmayan yöntemler için, statik olmayan yöntem çağrısı alma örneğini sağlama içerir. –