2
is
演算子を使用して型をチェックするときに、C#7.0構文を使用して変数を初期化しています。同じ変数名を使用すると、is演算子を使用した変数初期化エラーが発生する
// Yes, polymorphism may be better. This is just an illustration.
if (item is Dog animal) { // ... }
else if (item is Cat animal) { // ... }
else if (item is Animal animal) { // ... }
else { // ... }
しかし、私は変数名を囲む範囲で使用されているというエラーが出ます:私はこのようなすべてのシナリオは、のために、「動物」と言って、同じ変数名を使用します。これを回避する方法はありますか?私は本当に各else if
ステートメントの異なる変数名を使用する必要はありません。