Нет, это не сработает. Но, учитывая, что все три из этих типов наследуются от System.Security.Cryptography.HashAlgorithm
, вы можете объявить переменную этого типа:
HashAlgorithm shaHash;
switch(this.HASH_ALGORITHM)
{
// snip
}
Редактировать
Просто добавлю, причина, по которой var shaHash;
не будет работать, заключается в том, что var
- это просто краткий способ сказать: "Я не уверен, какой тип шрифта лучше использовать здесь, поэтому, пожалуйста, сделайте это для меня" , Компилятор требует, чтобы вы указали начальное значение, чтобы он мог определить лучший тип для использования.