C#에서 일반 목록의 사본 생성
이 안내서는 C#에서 일반 목록을 복제하기위한 다양한 방법을 탐색합니다. 는 내장 된 메소드가 없으므로 몇 가지 전략을 검토 할 것입니다.
값 유형에 대한 얕은 사본 List<T>
값 유형을 포함하는 목록 (예 : , )의 경우 간단한 얕은 사본이 충분합니다.
Clone()
참조 유형의 딥 카피 : iclonable 사용
목록이 참조 유형을 보유하고 있으며 딥 카피 (완전히 독립적 인 데이터 사본)가 필요하고 해당 유형이 인터페이스를 구현하면이 접근법을 사용할 수 있습니다.
참조 유형에 대한 딥 카피 : 복사 생성자 활용
요소 유형이 사본 생성자가 있지만 를 구현하지 않으면이 메소드가 바람직합니다.
int
모범 사례 : 공장 방법 또는 복사 생성자 double
강력한 깊은 복사의 경우, 사용자 정의 클래스 내에서 공장 메소드 (예 : ) 또는 사본 생성자를 사용하는 것이 좋습니다. 이것은 더 큰 제어를 제공하고 모든 멤버 변수의 완전한 깊은 사본을 보장합니다.
.
List<YourType> newList = new List<YourType>(oldList);
로그인 후 복사
논리를 캡슐화하는
개선 된 코드 구성 및 재사용 성을 위해 이러한 기술을 확장 방법 또는 전용 도우미 기능으로 포장하는 것을 고려하십시오.
위 내용은 C#에서 일반 목록을 복제하는 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!