2009-09-09 4 views
2

Delphi 2007로 작성된 응용 프로그램을 Delphi Prism으로 마이그레이션하는 것이 TList 클래스를 대체하는 최선의 방법입니까?Delphi Prism에서 TList를 대체합니다.

미리 감사드립니다.

안녕히 계십시오.

+0

여기 TStringList 대체에 대한 설명도 참조하십시오. http://stackoverflow.com/questions/1382395/replacement-for-tstringlist-in-delphi-prism –

답변

7

일반 TList라는 느낌이 들지만 일반 TList 또는 일반 TList가 D2009에 제네릭과 함께 도입 된 것을 의미하는지 여부는 지정하지 않습니다.

제네릭을 사용하려면 List<T>을 사용하십시오. 즉, 목록에서 무언가를 꺼낼 때마다 수동 타이 캐스팅을 수행 할 필요가 없습니다. 일반적으로, 당신은 특별한 이유가없는 한 이것을 사용하고 싶을 것입니다. 또한 Delphi 응용 프로그램에서 이미 TList를 사용하고 있다면 이것을 사용해야합니다. 메모리가 작동하면 CodeGear는 D2009에 제네릭을 추가 할 때 의도적으로 .NET List의 인터페이스를 적용합니다.

객체를 저장하는 비 일반 버전 (TList와 비슷 함)을 원하면 ArrayList을 확인하십시오. 이것은 현재의 구현 (TList를 전제로)과보다 밀접하게 매핑되지만, generics를 사용하여 얻을 수있는 컴파일 타임 타입 안전성을 잃어 버리게됩니다.

관련 문제