네임스페이스 고려사항
네임스페이스 고려사항
Delphi 모드에서 제네릭은 변수의 네임스페이스를 방해하지 않아요. 그래서 다음도 컴파일돼요.
본문
Type
TTest<T> = Class(TObject)
Private
FObj : T;
Public
Property Obj : T Read FObj Write FObj;
end;
Var
TTest : Integer;
제네릭 타입 이름인 TTest를 그대로 변수 이름으로 써도 컴파일이 되는 걸 볼 수 있어요. 다만 이 방식은 상수(constant)와 함수(function)에는 적용되지 않아요. 즉 변수에는 같은 이름을 써도 되지만, 상수나 함수 이름과는 충돌할 수 없어요.
더 알아보기
- 제네릭 문법 요소(Syntax elements)
- 타입 오버로드(Type overloads)