ホームページ >バックエンド開発 >C++ >リストを .NET のリストに変換するにはどうすればよいですか?

リストを .NET のリストに変換するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-17 00:56:13865ブラウズ

How to Convert a List to a List in .NET?

.NET でリスト をリスト

に変換する

このガイドでは、Client オブジェクトのリスト (List<Client>) を、対応する IDic インターフェース (List<IDic>) のリストに変換する方法について説明します。

ダイレクト キャストが失敗する理由

派生型 (Client など) から基本型 (IDic) への直接キャストは、.NET で許可されています。ただし、共分散の制限があるため、その逆は簡単ではありません。 これらの制限により、基本型リストに予期せず派生型要素が含まれる可能性がある安全でない操作が防止され、型の安全性が維持されます。

効果的な変換方法

2 つの信頼できる方法で目的の変換を実現します。

1. IEnumerable<IDic> (.NET 4 以降)

の活用

.NET 4 以降のバージョンは、IEnumerable<T> との共分散をサポートします。 これにより、List<Client> から IEnumerable<IDic> への変換が可能になり、Client オブジェクトを IDic インスタンスとして反復できるようになります。

2.新しいリストの構築

を作成するには、新しいリストを明示的に作成し、それにインターフェイス参照を設定する必要があります。 .NET 4 では、このための List<IDic> メソッドが提供されています。 .NET 3.5 は、ToList<T>() の後に Cast<T>() を使用します。ToList()

データの独立性に関する重要な注意事項

どちらの手法も個別のリストを生成し、型の安全性を維持します。 重要なのは、元の

を変更しても、新しい List<Client> は自動的には更新されません。 List<IDic> オブジェクト自体に直接加えられた変更のみが両方のリストに表示されます。Client

以上がリストを .NET のリストに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。