Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

AW: und C++ Speicherreservierung von Instanzen/Obijekten // (MS visual studio 2013)

  Alt 30. Jul 2014, 13:55
Also wird in delphi von natur aus alles bis auf den Zeiger im heap gespeichert?
Wenn du Klassen-Instanzen in Delphi damit meinst, ja.

Wenn du das mit dem von C++ vergleichen möchtest, dann liegst du völlig falsch, denn in Delphi entspricht das den Records.
Delphi-Quellcode:
type
  THersteller = string[99];
  PAuto = ^TAuto;

  TAuto = record
    Hersteller : THersteller;
    constructor Create( Hersteller : THersteller );
  end;

  { TAuto }

constructor TAuto.Create( Hersteller : THersteller );
begin
  Self.Hersteller := Hersteller;
end;

procedure Test2;
var
  myCar : TAuto;
begin
  myCar := TAuto.Create( 'BMW' );
  Writeln( SizeOf( myCar ) ); // -> 100
end;

procedure Test3;
var
  myCar : PAuto;
begin
  myCar := New( PAuto );
  try
    myCar^ := TAuto.Create( 'BMW' );
    Writeln( SizeOf( myCar ) ); // -> 4
  finally
    Dispose( myCar );
  end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (31. Jul 2014 um 08:49 Uhr)
  Mit Zitat antworten Zitat