メインコンテンツへスキップ
< すべてのトピックに戻る

「CS0266: Cannot implicitly convert type ‘A’ to ‘B’」が出た場合は?

CS0029と似ていますが、こちらは「変換は可能だが、安全のため明示的な許可が必要」な代入 エラーです(例:親クラスの変数を、子クラスの変数に代入しようとした)。

全ての「動物(親)」が「犬(子)」であるとは限らないため、コンパイラが「本当に犬として扱っていいの?」と確認を求めている状態だからです。

代入しようとしている中身が確実にその型であると分かっている場合は、Dog myDog = (Dog)animal;のようにカッコをつけて強制変換(キャスト)するか、as 演算子を使って安全に変換してください。

目次

9周年キャンペーン実施中 早い申込みほど受講料がお得に