Делегатите в C#

12 отговора 1161 прегледа
#1

Делегатите в C#

Дали би могло да ми опишете кога е добре да се ползват делегати и предимствата от това ? Тука нещо не вдявам.



Отговор
в отговор на rимнaзиcтka #3

Re: Делегатите в C#

Дали би могла да ми опишеш, кой от задниците е твоя?
И какви са предимствата на левия и на десния, тука нещо не вдявам.

Машина за отделяне на кожа и сланина от парени свине
Отговор
в отговор на Programmerrr #4

Re: Делегатите в C#

А ква е разликата между делегатите и виртуалните ф-ии, освен че не се изисква онаследяване и се поддържа пряко присвояване runtime? Дали е IDispatch подобно, т.е. свързване по време на изпълнение?



Отговор
в отговор на Maтa Kocмaтa #5

Re: Делегатите в C#

Десният задник ми се струва по-добър. Левият е малко дебел сякаш.

Отговор
в отговор на Пeнчo #6

Re: Делегатите в C#

Кво ти пука?
И двата са загорели

Отговор
в отговор на rимнaзиcтka #7

Re: Делегатите в C#

Представи си, че левия задник е метод, а десния е делегат към този метод. Така, ако плесна десния задник, ще го усети левия. Или както е казал народа - с един КуРшум, два задника

Друга поговорка, която много точно обрисува делегатите е "де го чукаш, де се пука"

Отговор
в отговор на rимнaзиcтka #8

Re: Делегатите в C#

И за да станат нещата още по-мързеливи, са измислени т.нар. Multicast делегати, на които можеш да навържеш примерно 10 задника и с един удар да ги шляпнеш и 10-те наведнъж.

хитро, а?

Отговор
в отговор на acдф #9

Re: Делегатите в C#

e да ма не е същото като да се шляпка по 10 пъти различни задници

Отговор
в отговор на rимнaзиcтka #10

не се мъчи толкова

аз дълги години въпреки че знаех какво технически представлява виртуалната функция, не виждах къде може да се ползва. с течение на времето обаче, човек почва да вижда приложението на разни неща. верно че в училище се мъчат да те научат изведнъж да почнеш да ползваш и разбираш всичко, но това са утопии. нали знаеш, че през деветте месеца в корема, ембриона минава през разни рибоподобни и гущероподобни стадии? със професионалното развитие е същото мисля.




NE SUTOR ULTRA CREPIDAM
Отговор
в отговор на rимнaзиcтka #11

Re: Делегатите в C# (размисли и страсти)

using System;

class A{}
class B : A{}

delegate A AssSlapper(B b);

class Program
{
AssSlapper asp = SlapMe;
AssSlapper asp2 = SlapMe2;

static void Main(string[] args)
{}

private static A SlapMe(B b)
{
return new A();
}

private static B SlapMe2(A a)
{
return new B();
}
}



Горният код демонстрира следните концепции, нови за C# 2.0:

1. Директно присвояване на името на метода към инстанция на делегат
2. Ковариантност по отношение на типа на връщаната стойност на метода
3. Контра-вариантност по отношение на сигнатурата на метода


Отговор
в отговор на acдф #12

Re: Делегатите в C#

Пич, евала. И сега някой ако не е разбрал какво е това "делегат" - да ходи на село да копа картофите.
:)

---
In God we Trust (all others must submit a X.509 certificate)
Отговор
в отговор на zaphod #13

Re: не се мъчи толкова

през деветте месеца в корема, ембриона минава през разни рибоподобни и гущероподобни стадии? със професионалното развитие е същото мисля.
- а някои завинаги ще си останем балъци

Green Peas!
Отговор