エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
共変配列事故
またちょっと Gist に書き捨ててたコードが増えてきたので供養ブログをしばらく書いていこうかと。 (今... またちょっと Gist に書き捨ててたコードが増えてきたので供養ブログをしばらく書いていこうかと。 (今年はまだ少な目。一人アドベントカレンダーな量にはならず。) 配列の共変性 悪名高いんですが、C# のというか、.NET の配列は共変だったりします。 // ↓.NET 的に許されていはいるものの、 items[0] = new Base(); が例外を起こすので今となってはあんまり使いたくない機能。 // 意図的に使うことはめったにないものの… Base[] items = new Derived[1]; // これは問題ない items[0] = new Derived(); // これも問題ない。 Base に Derived を代入するのは安全。 Base item = items[0]; // これがダメ。 // 実行時例外が出る。 items[0] = new Base();