2008-10-31 4 views
10

으로 정의 된 유형이으로 열거 된 유형 인 경우 []을 사용하여 빈 세트를 쉽게 만들 수 있지만 전체를으로 설정하려면 어떻게해야합니까?Delphi 세트를 어떻게 채울 수 있습니까?

편집 : 예, 확실한 해결 방법은 for 루프를 사용하는 것입니다. 그것은 또 다른 방법이 있다면 정말 나쁜 솔루션입니다. 누구든지 일정한 시간에 일할 수있는 방법을 알고 있습니까?

+1

당신은 그것이 BitSet를 알고, 그래서 그 지식을 사용을 모두 1로 채우기 : 이것은 다음과 같은 상수 선언에서 사용을 할 수 있습니다. 그것에 대한 기본 언어는 없습니다. –

답변

14

낮은()와 고()이 컴파일시에 평가 될 수있다 "컴파일러 마법"함수입니다.

 
var 
    MySet : TBorderIcons; 
    MySet2 : TBorderIcons; 
const 
    AllIcons : TBorderIcons = [Low(TBorderIcon)..High(TBorderIcon)]; 
begin 
    MySet := [Low(TBorderIcon)..High(TBorderIcon)]; 
    MySet2 := AllIcons; 
end; 
+0

야! 그거 좋았어! ;) 고맙습니다! –

+0

나는 그 후에 내 자신의 대답을 지우고있다;) –

7

당 배리의 제안 :

FillChar(VarSet, SizeOf(VarSet), $FF); 
관련 문제