4

これが以前に尋ねられた場合は申し訳ありませんが、次の 2 つの使用法の違いについて簡潔な回答をお願いします。VSは両方を有効なコードとして受け入れるようです。

private static void doSomeWork()
{
   //do some work
}

public someClass()
{
   //Thread thread = new Thread(doSomeWork);
   //or
   //Thread thread = new Thread(new ThreadStart(doSomeWork));
}
4

1 に答える 1

6

唯一の違いは、最初のものは C# 1 では機能しないことです。C# 2 以降のコンパイラは、最初のものを 2 番目のものに変換します。

メソッド グループは、互換性のあるシグネチャを持つデリゲート型に暗黙的に変換できます。この機能を「(暗黙の)メソッド群変換」と呼びます。過負荷の解決を導くために 2 番目のものが必要になる場合もありますが、ここではそうではありません。

于 2012-05-07T12:32:15.453 に答える