Когда у меня есть такой делегат, как
public delegate void PrintMe();
(1)
PrintMe a = delegate() { MessageBox.Show("Hello"); };
a();
(2)
PrintMe b = () => { MessageBox.Show("Hello"); };
b();
(3)
PrintMe c = new PrintMe(HelpMe);
c();
static void HelpMe()
{
MessageBox.Show("Help Me");
}
for (1) и (2) Я не создал экземпляр делегата, он прямо указывает на анонимные методы. Но, как и в случае (3), мне нужно создать экземпляр делегата и передать статический method.for case (3) ) я не могу объявить как PrintMe c= HelpMe(); ?
. Как (1) и (2) работают?