class Number
{
public void Method1()
{
Console.WriteLine("Я - метод 1. Меня вызвали!");
}
public void Method2()
{
Console.WriteLine("Я - метод 2. Меня вызвали!");
}
}
public delegate void MyDelegate();
class Program
{
static void Main(string[] args)
{
Number numbers = new Number();
string number;
Console.WriteLine("Введите число 1 или 2");
number = Console.ReadLine();
if(number =="1")
{
MyDelegate Delegate = new MyDelegate(numbers.Method1);
}
else if(number == "2")
{
MyDelegate Delegate = new MyDelegate(numbers.Method2);
}
Console.Read();
А с чего бы ему выводить что либо кроме "Введите число 1 или 2"?
if же есть. методы есть
Нет методов. Есть делегаты
Delegate.Invoke()
аааааа.... хахахахахахах. я их вызвать забыл) Delegate();
я без инвока вызываю
А в чём кстати отличие от простого вызова и Invoke?
ни в чем. в ранней версии без инвока только вызов был. а сейчас можно с инвоком. но разницы никакой
Похрже, без Invoke не написать Delegate?.Invoke();
можно либо Delegate.Invoke() либо Delegate()
а если делегат = null? там суть в вопросике
а вот это не знаю - только сел изучать их)
Обсуждают сегодня