-2
在一個控制檯應用程序,我有以下幾點:這個代表爲什麼不工作?
static void Main(string[] args)
{
var t = New Test();
var newString = t.TestDelegate(tester("just testing"));
public static string tester(string s) {
return s;
}
}
public delegate string MyDelegate(string s);
public class Test
{
public string TestDelegate(MyDelegate m)
{
return "success!";
}
}
這是行不通的。在var newString
行,我得到以下錯誤:
cannot convert from 'string' to 'MyDelegate'
tester
具有相同的簽名MyDelegate
。我究竟做錯了什麼?
'TestDelegate()'方法需要一個MyDelegate實例。你傳遞給它一個'string'。如果你想傳遞一個指向'tester'的委託實例,那麼只需通過'tester',即'var newString = t.TestDelegate(tester);'。如果這不是你想要的,那麼我不知道你想要什麼。請修正你的問題,這是有道理的。 –
普通信封裏有多少封信?一。 「普通信封」裏有多少封信?十八。一個產生一個字符串的函數和它產生的字符串是兩個完全不同的東西。 –