Cita:
Empezado por Lepe
Está claro que si incluimos un salto, después no podemos hacer cosas de este estilo:
Código Delphi [-]
type a = array [TEnum] of String;
|
Poder, podemos, al menos el compilador no protesta. Lo que pasa es que no es lo que posiblemente creamos que sea. Es decir, cuando declaramos un tipo enumerado con saltos
Código Delphi
[-]
TEnum = (eUno = 1, eDos = 2, eTres = 3, eCuatro = 4, eOcho = 8);
estamos declarando más de lo que se ve, como puede observarse si hacemos:
Código Delphi
[-]
var
e: TEnum;
begin
for e := Low(TEnum) to High(TEnum) do
ShowMessage(IntToStr(Ord(e)));
end;
En otras palabras, TEnum no es más que el intervalo
con nombres especiales para el 1, 2, 3, 4 y 8 pero no para el 5, 6 y 7.
Y claro que en un arreglo como el que pones, esto sería particularmente raro porque se trata de un arreglo con más elementos de los que aparentemente tendría.
// Saludos