AGB  ·  Datenschutz  ·  Impressum  







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

Variable innerhalb einer anderen

Ein Thema von Lukaro · begonnen am 24. Mai 2005 · letzter Beitrag vom 29. Jul 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Lukaro
Lukaro

Registriert seit: 24. Mai 2005
Ort: NRW->OWL
16 Beiträge
 
Delphi 2005 Personal
 
#1

Variable innerhalb einer anderen

  Alt 24. Mai 2005, 19:47
Hi DelphiPraxis-Besucher.
Ich hab mich mal hier angemeldet, da ich neu in Delphi eingestiegen bin und irgendwie gar keinen Ansprechpartner für dieses Thema habe.

Aber erstmal genug von mir und zur Sache.
Ich habe eine Variable, nennen wir sie Variable, und eine andere, die nenne ich Andere.
Jetzt habe ich auch eine Variable, die heißt VarAndereiable

Aber wie kann ich jetzt auf die zugreifen? mit Var+Andere+iable scheints ja nicht zu gehen.

Naja, ich denke mal das kann mir hier jemand erklären

lG, Lukaro


<labermode=on> // Ab hier ist alles völlig OT und totaaal irrelevant

Schön, dass ich doch endlich ein vielversprechendes Forum gefunden habe, in dem ich meine (meist kleinen) Probleme stellen kann.
Die Konkurrenz scheint mir jedenfalls nicht immer besonders geeignet.

Wenn Jemand, der sich einigermassen mit Delphi auskennt mal Zeit und Lust hat mich zu fördern ( ) dann kann er mir gern seine ICQ schicken, er wird dann eventuell vor das Forum geschaltet und bekommt exklusiv meine neusten Probleme.

PS: bin ich im falschen Board? Hab hier nicht so schnell etwas allgemeines gefunden
<labermode=off>
A Programer is just a Tool that converts Coffein into Code.
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 19:49
Zitat:
Aber erstmal genug von mir und zur Sache.
Ich habe eine Variable, nennen wir sie Variable, und eine andere, die nenne ich Andere.
Jetzt habe ich auch eine Variable, die heißt VarAndereiable
Hmm, da wirst du vermutlich Pech haben, da die Variablennamen nich mit einkompiliert werden, und du somit zur Laufzeit nichts mehr mit den Namen der Variablen anfangen kannst

//edit: Genau, Herzlich Willkommen
Julian J. Pracht
  Mit Zitat antworten Zitat
Waldteufel
(Gast)

n/a Beiträge
 
#3

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 19:50
Hi.

[ ] Ich verstehe die Frage zwar nicht richtig, aber mit VarAndereiable sollte es gehen... [/ ]

Erläutere doch bitte etwas genauer, was du willst.
  Mit Zitat antworten Zitat
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#4

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 19:55
(Folgendes gilt nur im Fall dass ich dich richtig verstanden habe)
Wie Ultimator schon gesagt hat, werden Variablen einkompiliert, was dir in diesem Fall Schwierigkeiten bringen wird, die wohl niemand überwinden werden kann.
Eine mögliche Lösung wäre ein Delphi-Referenz durchsuchenArray
(Wenn ich richtig liege in der Vermutung was du so ca. erreichen willst)
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
Benutzerbild von Lukaro
Lukaro

Registriert seit: 24. Mai 2005
Ort: NRW->OWL
16 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 20:01
oh, , schon 3 Antworten in 10Min. Hier schlage ich mein Zelt auf.

Ja, ihr habt mich richtig verstanden und mir ist auch schon geholfen, ich muss zugeben, die antwort macht Sinn..

Hätt ja sein können, bei PHP gehts ja auch.

Dann mache ich das jetzt mit Arrays.
Danke an euch alle

lG, Lukaro
A Programer is just a Tool that converts Coffein into Code.
  Mit Zitat antworten Zitat
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#6

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 20:05
Zitat von Lukaro:
oh, , schon 3 Antworten in 10Min. Hier schlage ich mein Zelt auf.
Oh, habs ganz vergessen:

Herzlich willkommen in der DP

@Mods: bitte haut mich nich wenn der Beitrag jetzt eher Richtung OT ging
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
chkdsk
(Gast)

n/a Beiträge
 
#7

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 20:19
Gibt es nichts, was mit FindComponent() vergleichbar ist, bloß eben mit Variablen?
  Mit Zitat antworten Zitat
Waldteufel
(Gast)

n/a Beiträge
 
#8

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 20:25
Hi.

Nein. Variablennamen sind nur Platzhalter, die beim Compilieren durch Adressen ersetzt werden...
  Mit Zitat antworten Zitat
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#9

Re: Variable innerhalb einer anderen

  Alt 24. Mai 2005, 20:26
Zitat von chkdsk:
Gibt es nichts, was mit FindComponent() vergleichbar ist, bloß eben mit Variablen?
Leider nicht. FindComponent funktioniert deshalb, weil die Objekte mit Namen in einer Liste abgespeichert werden. (Die Liste findet man auch unter der Eigenschaft Components)
Eine Funktion, Variablen in einer Procedure zu finden gibt es nicht. Falls man diese a la FindComponent handhaben muss, gibts Arrays, Indexe oder Pointer

[Edit]"I dont like the Rote Kasten, but the Rote Kasten likes me"... nö, genau umgekehrt!
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
Puhbaehr
(Gast)

n/a Beiträge
 
#10

Re: Variable innerhalb einer anderen

  Alt 29. Jul 2005, 14:40
Hallo Forum-User
ich beschäftige mich auch, zumindest denke ich das, mit dem gleichen Problem. Deshalb werde ich mal an dieses Thema anknüpfen. Ich möchte sicher gehen, dass das was ich vorhab wirklich so nicht geht.

Und zwar:
Ich habe einen record:

Delphi-Quellcode:
type
  TKonfiguration = record
    Startdatei : string;
    RouterIP : string;
    Startzeit : integer;
   end;
Dazu habe ich eine Datei aus der Einstellungen für das Programm gelesen werden.
Diese Einstellungen haben einen Namen und einen Wert:

Delphi-Quellcode:
# So könnte die Datei aussehen:

Startdatei = irgendeine.exe
RouterIP = 192.168.1.1
Startzeit = 60
Die Namen und Werte werden ausgelesen.
Leerzeichen, '=' und andere Dinge entfernt bzw. bearbeitet.
Am Ende wird das ganze in temporäre Variablen geschrieben was vereinfacht dargestellt so aussieht:

Delphi-Quellcode:
...
var
  Name, Wert : String;
...
 begin
...
  Name := 'Startdatei';
  Wert := 'irgendeine.exe';
...
 end;
...
Nebenbei: Das ganze befindet sich in einer Schleife und darin wird jede Zeile einzeln abgearbeitet.
Und nun möchte ich, dass die Werte den Namen in dem record zugewiesen werden.
Das habe ich nun so gelöst:

Delphi-Quellcode:
if Name = 'Startdateithen
 begin
  Konfiguration.Startdatei := Wert;
 end;
if Name = 'RouterIPthen
 begin
  Konfiguration.RouterIP := Wert;
 end;
if Name = 'Startzeitthen
 begin
  Konfiguration.Startzeit := Wert;
 end;
Die Namen werden nun am Ende jeder Schleife ausgewertet und der Wert in dem Record gespeichert.
Nun habe ich hier das große Problem, dass sobald ich die Namen für einen Wert ändere, z.B. wenn ich aus 'RouterIP' 'Gateway' machen möchte, obige Anweisungen doppelt ändern muss.
Zweites Problem habe ich, wenn ich mehrere Einstellungen in der Datei habe, habe ich entsprechend viele Anweisungen zu schreiben. Das zerrt natürlich an der Geschwindigkeit.

Nun meine Frage: Wie schaffe ich es, dass der Inhalt der Variable als Bezeichner hinter dem '.' bei Konfiguration benutzt wird?
Ich versuche es mal bildlich darzustellen:

      Konfiguration."Name" := Wert; In PHP gibt es hier die Möglichkeit das in einem Array zu speichern.
So würde das in PHP aussehen:

      Konfiguration[Name] := Wert; Für 'Name' würde nun der Wert welcher in der Variablen steht eingesetzt werden.

Wie setze ich das in Delphi um?

Muha, und bitte erschlagt mich nicht wenn ich manche Dinge nicht beim richtigen Namen genannt hab

sondern korrigiert mich
  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 20:29 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