28. april 2005 - 17:02Der er
11 kommentarer og 1 løsning
simpelt spørgsmål ang delegates
Hej, jeg fatter ikke, hvorfor denne multicast delegate (minDel3) ikke formidler metodekaldet videre til både MinFunk1 og MinFunk2. Jeg adderer de to første delegates for at få en multicast delegate, men det virker ikke. Den kalder kun MinFunk2. Hvorfor?
using System; namespace HelloWorld { class HelloWorld { [STAThread] static void Main(string[] args) { MinDelegate minDel1 = new MinDelegate( MinFunk1 ); MinDelegate minDel2 = new MinDelegate( MinFunk2 );
MinDelegate minDel3 = minDel1 + minDel2;
Console.WriteLine( minDel3(3) ); }
public delegate string MinDelegate(int i);
public static string MinFunk1(int i) { return "MinFunk1: "+i; }
"minDel3 = minDel1 + minDel2;" betyder at output for de to delegates bliver lagt sammen, men derimod at de begge to bliver kaldt når du kalder minDel3. Da rækkefølgen de kaldes i er 1) minDel1 og derefter 2) minDel2 så er det ouput fra minDel2 som du ender med (hvorimod output fra minDel1 - som ranglen fortæller - forsvinder).
ranglen> Hvis du gerne vil have nogle af de dejlige points, så dropper du bare en besked om der her og så finder vi hurtigt ud af det. :^)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.