Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.199 Beiträge
 
Delphi 12 Athens
 
#6

AW: "type xyz = type string" Sprachkonstrukt?!?

  Alt 15. Jul 2010, 14:29
das type besagt, daß ein eigenständiger Type angelegt wird.

dieses erstellt einen Alias für den Type, aber in der RTTI bleibt es dennoch der externer Type "String".
type xyz = string; .

hier wird in der RTTI für xyz ein eigenständiger Type angelegt.
type xyz = type string; .

Delphi hat doch eine strenge Typenprüfung, so daß man nun "xyz" und "string" unterscheiden kann.


[add]
Delphi-Quellcode:
type
  PTypeInfo = ^TTypeInfo;
  TTypeInfo = packed record
    Kind: Byte;
    Name: ShortString;
   {TypeData: TTypeData}
  end;

type
  xyz = type string;
  abc = string;
  def = xyz;

begin
  ShowMessage(Format('string = %s'#10'xyz = %s'#10'abc = %s'#10'def = %s'#10, [
    PTypeInfo(TypeInfo(string))^.Name, PTypeInfo(TypeInfo(xyz))^.Name,
    PTypeInfo(TypeInfo(abc))^.Name, PTypeInfo(TypeInfo(def))^.Name]));
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (15. Jul 2010 um 14:35 Uhr)
  Mit Zitat antworten Zitat