Ver la Versión Completa : enumerado
bosterito
15-01-2007, 00:05:34
hola a todos.Quisiera preguntar como definir un enumerado. Por Ej. (lunes, martes, miercoles, jueves, viernes). Desde ya muchas gracias.
roman
15-01-2007, 00:12:47
type
TDia = (lunes, martes, miercoles, jueves, viernes);
// Saludos
bosterito
15-01-2007, 20:32:55
¿Y cuando es un enumerado de enteros?
Salu2
Hola,
No sé yo si un "enumerado de enteros" tendría mucho sentido... parecería más bien que precisas un "Array de enteros", algo así:
TEnteros = array of integer;
De todos modos no sé si te confunde el hecho de que puedas tratar los tipos enumerados mediante sus índices, es decir, algo como esto es posible:
procedure TForm1.Button1Click(Sender: TObject);
var
dia: TDia;
begin
dia := miercoles;
if(dia = miercoles) then
ShowMessage('Es miércoles');
end;
Pero también es posible algo como esto:
procedure TForm1.Button1Click(Sender: TObject);
var
dia: TDia;
begin
dia := TDia(3);
if(dia = miercoles) then
ShowMessage('Es miércoles');
end;
Sin embargo en este último caso no verás el "Es miércoles", porque la enumeración se "indiza" comenzando desde cero, es decir, que "miércoles" correspondería al índice 2, y no al 3.
Empero, todavía podemos hacer esto:
type
TDia = (lunes = 1, martes, miercoles, jueves, viernes);
procedure TForm1.Button1Click(Sender: TObject);
var
dia: TDia;
begin
dia := TDia(3);
if(dia = miercoles) then
ShowMessage('Es miércoles');
end;
De modo que ahora sí verías el "Es miércoles", puesto que estamos haciendo que el tipo enumerado "TDia" se indize comenzando desde 1 y no desde 0.
No sé si respondo a tu pregunta o qué. :D
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.