AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Alle Variablen eines (Klassen-)Types erkennen?
Thema durchsuchen
Ansicht
Themen-Optionen

Alle Variablen eines (Klassen-)Types erkennen?

Ein Thema von ichbins · begonnen am 20. Nov 2005 · letzter Beitrag vom 20. Nov 2005
Antwort Antwort
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#1

Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 17:48
Hallo,

ich habe gerade eine Klasse (in einer eigenen Unit) erstellt, und ich möchte unbedingt die Kontrolle über alle Variablen dieses Typs behalten. Ich hab mir überlegt dass ich in der Unit ein dyn. Array speichere und in der create einen Pointer auf die Variable dazuspeichere. Aber wann soll ich die Variable wieder aus dem Array entfernen?

Wenn der User sie z.B. lokal deklariert hat und sie nicht freigegeben hat, wird die free ja nicht aufgerufen...
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 18:14
Wozu brauchst du unbedingt die Kontrolle? Normalerweise ist der Programmierer ja--aus gutem Grund--selbst dafür verantwortlich.

Aber sieh dir mal Interfaces an. Die haben AFAIR einen Reference Counter.
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 18:21
es handelt sich um tfile-Variablen. Ich will es dem Programmierer (=mir) erleichtern, die einzelnen Variablen freizugeben, die z.B. Dateien in dem Ordner geöffnet haben, der gelöscht werden soll.

Hast du mir ein Beispiel zu interfaces?
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 18:44
Zitat von ichbins:
Wenn der User sie z.B. lokal deklariert hat und sie nicht freigegeben hat, wird die free ja nicht aufgerufen...
Wenn der Programmierer so schlampig programmiert, kann er dir nicht vorwerfen, dass das Entfernen im Destruktor eine schlechte Lösung sei .
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 18:45
wenn ich aber selber der schlampig programmierende User bin... was ist überhaupt mit solchen "vergessenen" Variablen?
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
Benutzerbild von tn249
tn249

Registriert seit: 18. Jan 2004
Ort: München
164 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 19:06
Das mit den vergessenen Variablne ist so wie mitm Geschirrspülen. Wenn du immer Geschirr ausm Regal nimmst und es nie abwäscht (oder wahlweise in die Spülmaschine steckst) hast du irgendwann kein sauberes mehr. Und dann kannst du dir kein sauberes mehr nehmen wenn dus brauchst.

Beim Programmieren ist das Geschirr der Arbeitsspeicher und wenn der voll ist kannst du keine neuen variablen mehr anlegen, andere Programme übrigens auch nicht.

Ausserdem ist es sehr unordentlich (=schlechter Programmierstil) sein dreckiges Geschirr immer rumliegen zu lassen.

Gruß Thomas
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: Alle Variablen eines (Klassen-)Types erkennen?

  Alt 20. Nov 2005, 19:36
Zitat von ichbins:
wenn ich aber selber der schlampig programmierende User bin... was ist überhaupt mit solchen "vergessenen" Variablen?
Such mal hier im Forum nach Hier im Forum suchenMemCheck - ist eine einzige Datei, die ich auch gerne zur Fehlersuche benutze. Du musst sie einfach nur als erste Datei in der DPR-Datei einbinden und direkt nach dem Begin MemChk; aufrufen. Beispielgerüst:

Delphi-Quellcode:
program BeispielProgramm;

uses
  MemCheck,
  ...
  ;

begin
  MemChk;

end;
Beim Programmende kriegst du dann eine Liste mit allen nicht freigegebenen Datenbereichen (u.a. also auch den Objekten). Wenn du Debug-Informationen in die EXE-Datei einbindest, dann bekommst du sogar die Stellen geliefert, von denen aus der Speicher belegt wurde.

//Nachtrag:

Hier ist die MemCheck Homepage.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz