10
なぜ私に教えてくださいParameterizedThreadStartクラスは、System.object引数型だけに含まれるメソッドのみを許可します。ParameterizedThreadStartがオブジェクトパラメータのみを許可するのはなぜですか?
public class MainThreadTest
{
public static void Main(string[] args)
{
Thread T = new Thread(new ParameterizedThreadStart(DisplayYOrX));
T.Start("X");
DisplayYOrX("Y");
}
static void DisplayYOrX(object outValue)
{
string Parameter = (string)outValue;
for(int i=0; i<10; i++)
Console.Write(Parameter);
}
}
私がそれについて知りたいのは、なぜ型キャスト構文を再度使用したくないかということです。
string Parameter = (string)outValue;
のバージョンは、2.0の.NET Frameworkを使用する開発者のためとして、ラムダは使いにくいです。私は正しいですか? –
@Frank 2.0 C#コンパイラで動作するバージョンを含めるように答えを更新しました。注意:ラムダ構文の使用は、C#3.0以降のコンパイラを使用する場合は、2.0フレームワークでも有効です。どちらの方法でも、私がそこに置いた2番目のサンプルは、C#2.0以上のすべてで動作します。 – JaredPar
2.0フレームワークでラムダ構文を使用できると言った方法に本当に関心があります。だから、どうすればいいのか教えてください。すべての参照リンク? –