델파이 제네릭(Generic) 용어
■플랫폼 요구 사항들과 차이점들
델파이의 제네릭은 .NET 2.0 및 그 이후 버전,
그리고 네이티브 Win32 컴파일러에서 지원 됩니다.
이들 플랫폼들에서 지원되는 기능들에는 약간의 차이들이 있습니다.
■ 런타임 타입 정보(RTTI)
Win32에서, 제네릭과 메소드는 RTTI 정보를 갖지 않지만
인스턴스화된 타입은 RTTI 정보 를 갖습니다.
인스턴스화된 타입은 제네릭과 파라미터들의 집합의 조합입니다.
■ 인터페이스 GUID
Win32에서, 인스턴스화된 인터페이스 타입은 인터페이스
GUID를 갖지 않습니다.
■ 인터페이스 내의 파라미터화된 메소드
Win32에서, 파라미터화된 메소드(타입 파라미터와 함께 선언된 메소드)는
인터페이스 내 에서 선언될 수 없습니다.
.NET에서는 이것이 가능합니다.
■ 인스턴스화 시점
Win32에서는, 인스턴스화는 컴파일러에 의해 수행됩니다.
모든 인스턴스화된 객체들이 .obj 파일로 내보내어집니다.
.NET에서는, 인스턴스화는 런타임 환경에서 수행됩니다.
■ 동적 인스턴스화
Win32에서는 런타임에 동적 인스턴스화가 지원되지 않습니다.
■ 인터페이스 제약조건
Win32 인터페이스는“가벼운”인터페이스가 아닙니다.
이것은 모든 타입 파라미터 constraints가 항상 COM IUnknown 메소드들인 _AddRef, _Release, QueryInterface를 지원하거나
TInterfacedObject로부터 상속받는다는 것을 의미합니다.
레코드 타입은 인터 페이스 제약조건 파라미터를 지정할 수 없습니다.
.NET에서만 레코드 타입 내의 인터페이스를 지원하기 때문입니다.
제네릭의 용어들
제네릭을 설명하기 위해 사용되는 용어들은 아래와 같습니다.
'Delphi > 문법' 카테고리의 다른 글
델파이 제네릭(Generic) 타입 (0) | 2021.05.13 |
---|---|
델파이 제네릭(Generic) 선언 (0) | 2021.05.13 |
델파이 제네릭(Generic) 개요 (0) | 2021.05.12 |
델파이 인터페이스 (0) | 2021.05.11 |
델파이 다중 동적 배열 (0) | 2021.05.11 |
댓글