Делегат — это тип ссылки, который хранит данные о сигнатуре метода.
Делегат — это объект, который ссылается на метод.
Объект делегата может вызывать разные методы во время выполнения, а не во время компиляции.
Синтаксис:
[атрибут] модификатор_доступа delegate тип имя_делегата ([список_параметров]);
Делегат — это объект, который ссылается на метод.
Объект делегата может вызывать разные методы во время выполнения, а не во время компиляции.
Синтаксис:
[атрибут] модификатор_доступа delegate тип имя_делегата ([список_параметров]);
Main.cs
using
System;
public
delegate
int
dlgSum(
int
arg0,
int
arg1);
public
delegate
void
dlgTextShow();
//обратите ВНИМАНИЕ, класс вообще ОТСУТСТВУЕТ
class
Program {
-
public
static
int
Main() {
-
//создание анонимного метода
-
//ВНИМАНИЕ! в конце метода ставится точка с запятой
-
dlgSum dS =
delegate
(
int
arg0,
int
arg1) {
-
return
(arg0 + arg1);
-
};
-
//реализация объекта делегата
-
//обратите ВНИМАНИЕ, к объекту делегата добавляются круглые скобки, как у метода
-
Console.WriteLine(dS(10, 20));
-
dlgTextShow dTS =
delegate
() {
-
Console.WriteLine(
"Привет Мир!"
);
-
};
-
dTS();
-
Console.ReadKey();
-
return
0;
-
}
}
using
System;
public
delegate
int
dlgSum(
int
arg0,
int
arg1);
public
delegate
void
dlgTextShow();
//обратите ВНИМАНИЕ, класс вообще ОТСУТСТВУЕТ
class
Program {
-
public
static
int
Main() {
-
//создание анонимного метода
-
//ВНИМАНИЕ! в конце метода ставится точка с запятой
-
dlgSum dS =
delegate
(
int
arg0,
int
arg1) {
-
return
(arg0 + arg1);
-
};
-
//реализация объекта делегата
-
//обратите ВНИМАНИЕ, к объекту делегата добавляются круглые скобки, как у метода
-
Console.WriteLine(dS(10, 20));
-
dlgTextShow dTS =
delegate
() {
-
Console.WriteLine(
"Привет Мир!"
);
-
};
-
dTS();
-
Console.ReadKey();
-
return
0;
-
}
}
30
Привет Мир!
Привет Мир!