AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Stringlisten in mehreren Prozeduren nutzen
Thema durchsuchen
Ansicht
Themen-Optionen

Stringlisten in mehreren Prozeduren nutzen

Ein Thema von WIng2005 · begonnen am 23. Aug 2007 · letzter Beitrag vom 28. Aug 2007
Antwort Antwort
Seite 3 von 3     123   
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#21

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 24. Aug 2007, 13:12
Darauf hinweisen, dass einne globale Instanz gesichert werden muss, damit man sie nicht verwendet, bevor sie angelegt (.create) wurde, denn das führt zu Zugriffsverletzungen. Ausserdem sollte sowas geregelt zurückgeabut werden (Ja nach Beenden der Applikation wird der Speicher eh wieder frei, aber bei sowas kanns auf die Reihenfolge ankommen).
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
s-off
(Gast)

n/a Beiträge
 
#22

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 24. Aug 2007, 13:38
Ja,

das ist allgemein bekannt, dass man kein Spanferkel essen kann, bevor es geboren wurde.
Nur mit Deinem Code-Beispiel und den dazu gehörigen Erläuterungen komme ich ehrlich gesagt nicht ganz klar.

*Ratter-ratter*

Ah, ok - jetzt verstehe ich. Du greifst auf Deine Stringliste nicht direkt zu, sondern über eine Funktion, die dafür sorgt, dass die Stringliste erzeugt wird, sofern noch nicht geschehen.
Da ich in der Regel keine globalen Objekte nutze, war mir der Grund für Dein Konstrukt nicht auf Anhieb klar; sorry.

Edit:
Rechtschreibfehler eingebaut.
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#23

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 24. Aug 2007, 16:27
Das mit der Stringliste ist ja nur ein Trivialbeispiel.
Manchmal benötigt man solche Konstrukte, für z.B.: eine Factory, die einem Instanzen von registrierten Klassen liefert. Ist dann praktisch, wenn solche Klassen für Kundenanpassungen überschrieben werden müssen. Dann reicht es der Factory zu sagen, wenn Klasse X angefordert wird, gib eine Instanz von abgeleiteter Klasse Y zurück. Erspart viel Schreibarbeit und man kann sichergehen, dass überall die Klasse ersetzt wird. Im Projekt meiner Firma werden z.B.: die Dialoge über eine Art Scriptsyntax erstellt. Da steht halt im Script einfach der Klassenname drin.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
WIng2005

Registriert seit: 20. Mär 2006
Ort: Thüringen
388 Beiträge
 
Delphi XE Starter
 
#24

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 26. Aug 2007, 12:38
Sorry, dass ich derzeit ein winig passiv war (war ein anstrengendes WE)....

@s-off:bisher habe ich es genau so gemacht, wie du im 2. Beispiel gezeigt hast. (...also ausserhalb jeglicher Klassendeklaration deklariert....). Die weiteren aufgeführten Anmerkungen, die hier angesprochen wurden, sind für mich nicht wirklich nachvollziehbar (vielleicht hätter der Titel mit "Noob braucht Hilfe..." beginnen sollen.)
Der eigentliche Grund für die Stringlisten ist, dass ich über mehrere Proceduren hinweg Informationen sammeln (Format: "Text ; Text; Text") kann, welche dann einfach in eine CSV geschrieben werden.
Diese dienen dann als "Protokoll" einer Berechnung.
Da die Infos aber in mehreren Prozeduren und Funktionen entstehen, muß ich global auf die gleiche Stringliste zugreifen können... Das ist schon alles. Schöner wäre natürlich (habe ich so aber noch nicht gesehen), wenn ich die CSV direkt beschreiben könnte. Bisher habe ich eine korrekte Spaltentrennung nur via Stringlisten hinbekommen.


MFG und danke für die zahlreichen Hinweise
Steffen
  Mit Zitat antworten Zitat
WIng2005

Registriert seit: 20. Mär 2006
Ort: Thüringen
388 Beiträge
 
Delphi XE Starter
 
#25

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 27. Aug 2007, 10:13
Das Problem hat sich geklärt. Bin alles nochmal durchgegangen und habe festgestellt, dass das erste
Schreiben in die Liste VOR dem eigentlichen Erzeugen stattfand. Dumm!

Naja, habe es entsprechend geändert...


MFG
Steffen
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#26

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 27. Aug 2007, 22:45
sag mal, warum machste es nicht so, wie in der prozeduralen progammierung...

Delphi-Quellcode:
procedure main;
var
 sl: tstringlist;
begin
 sl := tstringlist.create;
 try
  sub(sl);
 finally
  sl.free;
 end;
end;

procedure sub(const sl: tstrinlist);
begin
// mach irgendwas mit sl...
end;
  Mit Zitat antworten Zitat
WIng2005

Registriert seit: 20. Mär 2006
Ort: Thüringen
388 Beiträge
 
Delphi XE Starter
 
#27

Re: Stringlisten in mehreren Prozeduren nutzen

  Alt 28. Aug 2007, 09:38
Im Endeffekt mache ich es ja so, nur dass ich die SL nicht jedesmal übergebe, sondern (auch aus Gründen der vielen
Änderungen, die ich sonst vornehmen müßte) deklariere sie global.

MFG
Steffen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 23:08 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