Activator.CreateInstanceの結果をインターフェイスの型にキャストするときに、varキーワードの使用について私が作業するところにはいくつか質問があります。私はVARを理解すると、次のスニペットのペアはかなり同じVaRのバージョンと明示的な型バージョン間で、次のとおりです。varキーワードとActivator.CreateInstance?
// Direct cast
var thing = (IThing)Activator.CreateInstance(Type.GetType(thingType));
IThing thing = (IThing)Activator.CreateInstance(Type.GetType(thingType));
// Casting with as
var thing = Activator.CreateInstance(Type.GetType(thingType)) as IThing;
IThing thing = Activator.CreateInstance(Type.GetType(thingType)) as IThing;
は、私はそれがインテリセンスや実行時の動作を変更する場合があります欠けているいずれかの微妙な違いがありますか?
あなたの最後の文は、あなたには、いくつかの違いを見ている意味 - あなたはより具体的なことができますか? (または私はあまりにもそれを読んでいますか?) – ChrisF
*私は違いは見ませんが、同僚とvarのメリットを議論していました。私たちはどちらも確信が持てませんでした。 –