AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FreeAndNil geht nicht

Ein Thema von Hansa · begonnen am 28. Jan 2005 · letzter Beitrag vom 28. Jan 2005
 
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

FreeAndNil geht nicht

  Alt 28. Jan 2005, 02:11
Hi,

ich habe hier einen komplizierten Fall. Es geht um diese Stringgrid.Objects. Im Prinzip aber nur um TObject. Wenn ich diese Objects anlege, sie danach mit free freigebe, dann kommen seltsame Fehler. Und zwar daher, weil ich später nochmals auf NIL prüfe. Obwohl die Objekte mit free freigegeben wurden läuft das programm so, als wären sie zumindest nicht NIL. Ich setze sie deshalb zuerst auf NIL und dann erst rufe ich free auf und siehe an : es geht.

Kann mir das mal einer erklären ? Dieses Verhalten ist anscheinend auch die Ursache für die Existenz von FreeAndNil.

Das hier geht :

Delphi-Quellcode:
procedure TfrmEin.FormHide(Sender: TObject);
var i,j : integer;
begin
  for i := sg.FixedCols to sg.ColCount - 1 do
    for j := sg.FixedRows to sg.RowCount - 1 do
      if sg.Objects [i,j] <> nil then begin
        sg.Objects [i,j] := nil;
        sg.Objects [i,j].Free;
      end;
end;
und hier :

Delphi-Quellcode:
procedure TfrmEin.FormHide(Sender: TObject);
var i,j : integer;
begin
  for i := sg.FixedCols to sg.ColCount - 1 do
    for j := sg.FixedRows to sg.RowCount - 1 do
      if sg.Objects [i,j] <> nil then begin
        FreeAndNil (sg.Objects [i,j]);
      end;
end;
kommt folgender Fehler :

Zitat von D7-Compiler:
[Fehler] ArtNrEin.pas(3118): Konstantenobjekt kann nicht als Var-Parameter weitergegeben werden
Gruß
Hansa
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz