Mit type of bekommst Du einen neuen Typ der nicht zum Original Kompatibel ist...
Beispiel:
Delphi-Quellcode:
Program testtype;
type
tminuten = type cardinal;
tSekunden = type of cardinal;
procedure testCardinal(Value: cardinal);
begin
end;
procedure testMinuten(Value: tminuten);
begin
end;
procedure testSekunden(Value: tminuten);
begin
end;
procedure Test;
var
c: cardinal;
t: tminuten;
s: tSekunden;
begin
testCardinal(c);
testCardinal(t);
testCardinal(s); // Fehler
testMinuten(c);
testMinuten(t);
testMinuten(s); // Fehler
end;
begin
Test;
end.