AGB  ·  Datenschutz  ·  Impressum  







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

Frage zu .free bei Klassen

Ein Thema von Wuaegner · begonnen am 20. Jul 2005 · letzter Beitrag vom 20. Jul 2005
 
Benutzerbild von Wuaegner
Wuaegner

Registriert seit: 8. Feb 2004
406 Beiträge
 
Delphi 6 Enterprise
 
#12

Re: Frage zu .free bei Klassen

  Alt 20. Jul 2005, 18:32
Delphi-Quellcode:
 type
  TStringManager = class
  private
   FNummernListe : TStringlist;
   FOrteListe: TStringList;
   FDatumsListe: TStringList;
   FLaengenListe: TStringList;
   FKostenListe: TStringList;
   FStringList: TStringList;
   FCopyList: TStringList;
   FEinzelListe: TStringList;
   procedure ClearToErsteZeile;
   procedure ClearGarbage;
   procedure FillFEinzelListe;
   procedure SplitString(s:string);
   procedure StrToListen;
   function Kosten(nr: string):real;
   function LoadFile(FileName:string): boolean;
   function IsValid(s: string):boolean;

  public
   constructor Create;
   destructor Destroy; override;

  end;


var
  Form1: TForm1;
  StrMg: TStringManager;
  

implementation

{$R *.dfm}

{ TStringManager }

procedure TStringManager.ClearGarbage;
var i: integer;
    s: string;
    anzahl: integer;
begin
  ClearToErsteZeile; // Unwichtiges davor wird gelöscht

 

 for i:= FStringList.Count-1 downto 0 do
 begin

  if (pos('*',FStringList.Strings[i])=0) then

  FStringList.Delete(i);


 end;

     .
     .
     .

end;


constructor TStringManager.Create;
begin
  FNummernListe:= TStringList.Create;
   FEinzelListe:= TStringList.Create;
   FDatumsListe:= TStringList.Create;
   FOrteListe:= TStringList.Create;
   FLaengenListe:= TStringList.Create;
   FKostenListe:= TStringList.Create;
   FCopyList:= TStringList.Create;
   FStringList:= TStringList.Create;
end;

destructor TStringManager.Destroy;
begin
   FreeAndNil(FNummernListe);
   FreeAndNil(FEinzelListe); [b]// <= HIER KOMMT EINE AV
   FreeAndNil(FDatumsListe);
   FreeAndNil(FOrteListe);
   FreeAndNil(FLaengenListe);
   FreeAndNil(FKostenListe);
   FreeAndNil(FCopyList);
   FreeAndNil(FStringList); [b]// UND HIER ( auskommentiert läuft es)
  inherited;
end;

procedure TStringManager.FillFEinzelListe;
var i, k: Integer;
begin

   FEinzelListe:= FNummernListe;
    For i := FEinzelListe.Count - 2 downto 0 do
      For k := FEinzelListe.Count - 1 downto i + 1 do
        If FEinzelListe.Strings[i] = FEinzelListe.Strings[k] Then
          FEinzelListe.Delete(k);


end;



function TStringManager.IsValid(s: string): boolean;
begin
 result:= false;
 if s[3]='.then result:= true;
end;




procedure TForm1.FormCreate(Sender: TObject);
begin
 StrMg:= TStringManager.Create;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  StrMg.Destroy;
end;

procedure TForm1.Button1Click(Sender: TObject);
var h,i: integer;
begin

 for h:= 1 to 9 do
 begin
  if StrMg.LoadFile('telekom_'+IntToStr(h)+'.txt') then
   begin
    StrMg.ClearGarbage;
    for i:= 0 to StrMg.FStringList.Count-1 do
     begin
      StrMg.FCopyList.Add(StrMg.FStringList.Strings[i]);
     end;
    StrMg.FStringList.Clear;
   end;
  end;

    StrMg.FStringList:= StrMg.FCopyList;
    StrMg.StrToListen;
    StrMg.FillFEinzelListe;
    LBNummern.Items:= StrMg.FEinzelListe;
end;

end.
Wuaegner
Gruß Flo
Unternehmensberatung
  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 08:27 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