집합 생성자

집합 생성자 (Set constructors)

식 안에 집합 타입 상수를 넣어야 할 때는 집합 생성자(set constructor)를 써야 해요. 본질적으로 타입을 정의할 때와 같은 일이지만, 집합을 식별할 식별자가 없다는 점만 달라요. 집합 생성자는 대괄호로 감싼, 쉼표로 구분된 식들의 목록이에요.

출처: Free Pascal Reference - Set constructors

본문

모든 집합 그룹과 집합 요소는 같은 서수(ordinal) 타입이어야 해요. 빈 집합은 []로 나타내며, 어떤 타입의 집합에든 대입할 수 있어요. 범위를 가진 집합 그룹 [A..Z]는 그 범위의 모든 값을 집합 요소로 만들어요. 다음은 유효한 집합 생성자들이에요.

[today,tomorrow]
[Monday..Friday,Sunday]
[ 2, 3*2, 6*2, 9*2 ]
['A'..'Z','a'..'z','0'..'9']

주의할 점이 있어요. 첫 번째 범위 지정자가 두 번째보다 더 큰 서수 값을 가지면, 결과 집합은 빈 집합이 돼요. 예를 들어 ['Z'..'A']는 빈 집합을 나타내죠. 범위를 나타낼 때는 조심해야 해요.

더 알아보기

  • 집합 상수 [](빈 집합)의 취급은 타입 정의와 관련된 내용에서 이어져요.
  • 집합 생성자가 식에서 쓰이는 위치는 식 문법 섹션에서 볼 수 있어요.