[問題] Delegate回傳質疑問?

作者: Gamakatsu (Gama)   2015-11-02 20:53:23
class Program
{
public delegate string MyDelegate();
static void Main(string[] args)
{
MyDelegate myDelegate = MyMethod1;
myDelegate += MyMethod2;
Console.WriteLine(myDelegate());
Console.ReadKey();
}
public static string MyMethod1()
{
Console.WriteLine("Mythod1");
return "Done";
}
public static string MyMethod2()
{
Console.WriteLine("Mythod2");
return "Done";
}
}
===========================================================
以上是目前自己在練習Delegate觀念時打的程式碼
想請問各位大大這段程式碼的結果為何是印出
MyMethod1
MyMethod2
Done
而不是
MyMethod1
MyMethod2
Done
Done
謝謝大家
作者: fo40225   2015-11-02 21:47:00
多點傳送委派只會回傳最後一個方法的回傳值
作者: bantime (景)   2015-11-02 21:47:00
return 似乎只會接到最後一個 總不可能如果回傳int結果最後回來變成int[]吧
作者: fo40225   2015-11-02 21:48:00
msdn.microsoft.com/zh-tw/library/system.delegate備註倒數第二段
作者: O187 (187cm)   2015-11-02 22:47:00
你應該用迴圈去接
作者: testPtt (測試)   2015-11-03 00:22:00
做完一次先輸出一次

Links booklink

Contact Us: admin [ a t ] ucptt.com