ホームページ > バックエンド開発 > C++ > リストをC#のリストに割り当てることはできますか?

リストをC#のリストに割り当てることはできますか?

Linda Hamilton
リリース: 2025-02-02 05:36:11
オリジナル
547 人が閲覧しました

Can List Be Assigned to List in C#?

タイプの分散問題&lt>

lt&gtに登録されている。解決策はありますか?

次のコードを検討してください:

協力

調整とは、データ構造がベースタイプオブジェクトを保持できると宣言されたときに派生型オブジェクトを保持する機能です。上記の例では、リスト
class Animal { }
class Giraffe : Animal { }

static void Main(string[] args)
{
    // 数组赋值成功
    Animal[] animals = new Giraffe[10];

    // 隐式赋值失败
    List<Animal> animalsList = new List<Giraffe>(); // 错误

    // 显式转换失败
    List<Animal> animalsList2 = (List<Animal>)new List<Giraffe>(); // 错误
}
ログイン後にコピー
は動物または派生したタイプ(キリンなど)のオブジェクトを保持できます。

配列とリストの正方形の違いアレイは、実行時に参照タイプの分散をサポートし、型検査を実施します。ただし、ジェネリックは、コンピレーション中にタイプの安全性を実現するように設計されています。したがって、リストの隠された明示的な割り当て は、失敗します。

安全でない正方形の差

次のコードに示すように、このタイプの正方形の分散を許可すると、ランタイムエラーが発生します。

C#4の安全性の違い c#4は、インターフェイスと委任のセキュリティの一般的な差異に対するサポートを導入しました。 FUNC (共同)などのインターフェイスやアクションなどの委託

(逆)は、タイプセキュリティを確保します。

solution

C#2では、単一のリストを維持する必要がない場合は、リスト

.Convertallを使用して、必要なタイプの新しいリストを作成できます。 この復活した出力は、元の画像を維持し、擬似オリジナリティのままです

以上がリストをC#のリストに割り当てることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート