Una de las características del lenguaje Delphi que no se encuentra en otros idiomas modernos es la noción de conjuntos.
Delphi tipo establecido es una colección de valores del mismo tipo ordinal.
Un conjunto se define utilizando el conjunto de palabra clave:
Los tipos de conjuntos generalmente se definen con subrangos.
En el ejemplo anterior, TMagicNumber es un tipo de subrango personalizado que permite que las variables del tipo TMagicNumber reciban valores del 1 al 34. En pocas palabras, un tipo de subrango representa un subconjunto de los valores en otro tipo ordinal.
Los valores posibles del tipo de conjunto son todos los subconjuntos del tipo base, incluido el conjunto vacío.
Una limitación de los conjuntos es que pueden contener hasta 255 elementos..
En el ejemplo anterior, el tipo de conjunto TMagicSet es un conjunto de elementos TMagicNumber: números enteros del 1 al 34.
La declaracion TMagicSet = conjunto de TMagicNumber es igual a la siguiente declaración: TMagicSet = conjunto de 1 ... 34.
En el ejemplo anterior, las variables emptyMagicSet, oneMagicSet y otroMagicSet son conjuntos de TMagicNumber.
A asignar un valor a una variable de tipo conjunto, use los corchetes y enumere todos los elementos del conjunto. Como en:
Nota 1: cada variable de tipo de conjunto puede contener el conjunto vacío, denotado por [].
Nota 2: el orden de los elementos en un conjunto no tiene significado, ni es significativo que un elemento (valor) se incluya dos veces en un conjunto.
Para probar si un elemento está incluido en el conjunto (variable) use el EN palabra clave:
De la misma manera que puede sumar dos números, puede tener un conjunto que es la suma de dos conjuntos. Con sets tu evento tiene más operadores: