Ver Mensaje Individual
  #7  
Antiguo 20-12-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.610
Reputación: 32
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por ruedabeat2003 Ver Mensaje
Bien, bien, ya me queda claro, pudieron haber declarado TAnimal=(gato, perro, cerdo,tigre) y a una variable de tipo Tanimal solo le podria signar los valores: gato, perro, cerdo o tigre. OK
Así es, y aunque signifiquen lo mismo que cerdo, no podrías asignarle cochino, marrano, puerco o guarro , a no ser que declares a estos como identificadores cuyo tipo sea TAnimal. Una manera de hacerlo sería incluirlos como "sinónimos" de cerdo dentro del tipo enumerado:
Código Delphi [-]
Type
  TAnimal = (gato, perro, cerdo, cochino = cerdo, marrano = cerdo,
    puerco = cerdo, guarro = cerdo, tigre);

procedure TForm1.Button1Click(Sender: TObject);
Var
  A :TAnimal;
begin
  A := gato;
  ShowMessage (IntToStr (Byte (A)));  // 0
  A := tigre;
  ShowMessage (IntToStr (Byte (A)));  // 3
  A := cerdo;

  If (A = cochino) And (A = marrano) And (A = puerco) And (A = guarro) Then
    ShowMessage (IntToStr (Byte (A)));  // 2
end;

Un cochino abrazo.

Al González.
Responder Con Cita