AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi mehrere variablen gleichzeitig initialisieren
Thema durchsuchen
Ansicht
Themen-Optionen

mehrere variablen gleichzeitig initialisieren

Ein Thema von rob60 · begonnen am 12. Nov 2009 · letzter Beitrag vom 13. Nov 2009
Antwort Antwort
Seite 1 von 2  1 2      
rob60

Registriert seit: 11. Mai 2009
72 Beiträge
 
Turbo Delphi für Win32
 
#1

mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 21:21
hi weiss jamand von euch wie ich mehrere Variablen gleichzeitig initialisieren kann?

zb

variable1,variable2,variable3,variable4 := 0;

aber das funzt nicht.

muss ich wirklich

variable1 := 0;
variable2 := 0;
variable3 := 0;
variable4 := 0;

oder geht das ringer?
First, solve the problem. Then, write the code.
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 21:27
HI,

nein, du kannst nicht mehr als 1 Variable gleichzeitig beschreiben. Dies geht auch nicht, wenn du globale Variablen initialisierst. Da gibts auch keinen Umweg/Ausweg außer du machst dir ne Funktion, welche dann etwa so aussieht:

Delphi-Quellcode:
Procedure Init(Vars: array of var);
var i: Integer;
begin
  for I := Low(Vars) to High(Vars) do
    Pointer(Vars[i]) := 0;
end;
Ob das aber geht, oder wie es geht, wirst du uns dann mitteilen dürfen.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#3

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 21:41
wenn diese Variablen in einem gemeinsamen Speicherbereich (z.B. in einem Array oder Record gekapselt),
dann ginge es schon

ZeroMemory, FillChar oder was einem sonst noch Beliebt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#4

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 21:45
das mit dem gemeinsamen Speicherbereich hatte ich auch im Kopf, aber das ist so unwahrscheinlich, dass mehr als 2 Variablen direkt hintereinander im Speicher liegen. Wie sieht das mit meiner Prozedur aus? Hab grad kein Delphi zur Hand

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#5

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 21:54
Zitat von rollstuhlfahrer:
aber das ist so unwahrscheinlich, dass mehr als 2 Variablen direkt hintereinander im Speicher liegen.
Falls Delphi nicht sogar ein/zwei Variablen wegoptimiert, da sie nie lange benötigt werden und daher nur mal kurz in den Registern existieren.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
rob60

Registriert seit: 11. Mai 2009
72 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 22:31
danke für die superschnelle Antwort der code von rollstuhlfahrer code funktioniert leider nicht.

hab in etwas umgebaut, funzt auch bis auf : pointer(s) := 0; setzt s=''
ich würde aber gerne den variablenname der in der variable s (string) steht auf 0 setzen.

ps :var geht nicht und :vars auchnicht.
First, solve the problem. Then, write the code.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 22:47
Zitat von rob60:
ich würde aber gerne den variablenname der in der variable s (string) steht auf 0 setzen.

ps :var geht nicht und :vars auchnicht.
Das geht nicht.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#8

Re: mehrere variablen gleichzeitig initialisieren

  Alt 12. Nov 2009, 22:51
Man kann höchstens einige Eiganarten von Delphi ausnutzen, also wenn die Variablen "zufällig" an einer passenden Position liegen.
http://www.delphipraxis.net/internal...063919#1063919
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: mehrere variablen gleichzeitig initialisieren

  Alt 13. Nov 2009, 07:41
Obwohl, die Benutzeung von Implemnetierungsdetails gefährlich sein kann, wie man bei der Unicode-Umstellung bei D2009 gesehen hat.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#10

Re: mehrere variablen gleichzeitig initialisieren

  Alt 13. Nov 2009, 08:30
Wenn man sowas ordentlich genutzt hat, dann gab es keine Probleme.
Also, wenn man kein String/Char/PChar/PString mit AnsiString/AnsiChar/PAnsiChar/PAnsiString vermischt hatte.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 10:05 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