Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

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

AW: Buttonabhängiges Schließen des Programms

  Alt 27. Okt 2010, 10:21
Das Problem liegt tiefer im Fehlen von Grundlagen.

Ein AccessFehler kommt immer dann, wenn man auf eine Struktur (Klasse) zugreifen möchte, wo es aber keine gültige Instanz gibt.

Delphi-Quellcode:
type
  TFoo = class
    Data : string;
  end;

var
  foo : TFoo;
begin
  foo.Data := 'Hallo'; // <- AccessFehler

  foo := TFoo.Create;
  foo.Data := 'Hallo'; // Alles ok
  foo.Free;

  foo.Data := 'Hallo'; // <- AccessFehler

  foo := TFoo.Create;
  foo.Data := 'Hallo'; // Alles ok

  foo := nil; // <- Upps, ein Speicherleck erzeugt

  foo.Data := 'Hallo'; // <- AccessFehler
end;
Mit einem Beispiel aus dem Leben gegriffen, könnte man es so erklären:
Zitat:
Du planst in deinem Zimmer ein Regal aufzustellen. Das Regal soll rot, 1.5m hoch und 1m breit werden.

Wenn du jetzt in dieses Regal ein Buch stellst, fällt das auf den Boden (ein Absturz), weil du hast das Regal noch nicht gekauft (Instanz)
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 (27. Okt 2010 um 10:24 Uhr)
  Mit Zitat antworten Zitat