変数を宣言し、型を指定せずに、いくつかの条件に基づいて型を指定することはできますか?たとえば、ユーザーが使用したいサイズに基づいてSHA Hashオブジェクトを作成したいとします。C#で不特定の型の変数?
//get the Sha hasher
var shaHash;
switch (this.HASH_ALGORITHM)
{
case HashAlgorithm.SHA256: //HashAlgorithm is an enum.
shaHash = SHA256.Create();
break;
case HashAlgorithm.SHA384:
shaHash = SHA384.Create();
break;
case HashAlgorithm.SHA512:
shaHash = SHA512.Create();
break;
}
//... do hashing
これは可能ですか?
試しましたか? – CodeNaked
暗黙的に型指定されたローカル変数を初期化する必要があります。だからvar shaHash;コンパイルエラーです。 – Joe
@ CodeNaked、はい、私のコードはコンパイラに渡されません。 –