Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: (C++) Zeiger ein Sicherheitsrisiko?

  Alt 10. Sep 2004, 10:46
Gleiches geht natürlich auch mit Delphi-Klassen

Habs grad eben mal ausprobiert:

Delphi-Quellcode:
  TMyString = String[50];

  TMyClass = class(TObject)
  private
    MyText: TMyString;
  public
    procedure SetText(s: TMyString);
  end;

procedure TForm1.Button1Click(Sender: TObject);
var
  o: TMyClass;
  s: PChar;
begin
  o := TMyClass.Create;
  o.SetText('Wer das sieht, weiß alles' + #0);
  s := Pointer(Integer(o) + 4 + 1); //VMT-Zeiger + Längenbyte
  ShowMessage(s);
  o.Free;
end;

{ TMyClass }

procedure TMyClass.SetText(s: TMyString);
begin
  MyText := s;
end;
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat