String nach einer Double benennen, um sie auszulesen
Ich muss mir strings in Schleifen so zusammenstellen, dass ich damit bestehende Doubles nach ihren Variablenwerte abrufen kann.
Es entsteht z. B. eine string "Wert001", weil schon eine double Wert001 mit irgeneinem Zahlenwert existiert. Leider will es aber nicht klappen, dass ich damit nun den doublewert auslesen kann. Dachte, ich kann das so: WertneuAusgelesen = (double)Wert001; oder so lösen: WertneuAusgelesen = StrToDouble(Wert001); Geht aber alles nicht. Weiß da jemand Rat? |
Sali,
macht doch folgendes, damit wir das klarer identifizieren können: Poste doch bitte mal ein Code-Snippet. So, kann man da wirklich nicht sagen, was da falsch läuft. Fakt ist, dass das so gehen muss PHP-Code:
Zitat:
|
Ok - anbei ein Beispiel, bei dem der testwert 5600 werden sollte:
extern double Wert001 = 5600; extern double Wert002 = 0; extern double Wert003 = 0; double testwert; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { //--- //--- return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { int numb=0; for(int z=1;z<=3;z++){ numb++; string stringLineX = "Wert00"+string(numb); double LineX = StrToDouble(stringLineX); if(numb==1) testwert=LineX; } Comment( "\n testwert ", testwert ); } |
Sali,
das hier würde noch gehen: string stringLineX = "Wert00"+string(numb); // Du musst numb++ machen sonst bleibt der immer 0. damit würdest du den Wert im String haben: "Wert001" "Wert002" "Wert003" etc... Aber mit StrToDouble würdest du nur 0 erhalten, weil der String-Wert im Parameter stringLineX kein DoubleWert beinhaltet sondern ein alphanumerischen Wert. Ich weiss, was du im Grunde vorhast. Aber das funktioniert nur mit Reflection, aber soweit ich weiss, kennt MQL4 ein solches Konzept nicht. Oder ich kenne das nicht. https://de.wikipedia.org/wiki/Reflex...grammierung%29 Und warum machst du das so kompliziert. Du hast doch die externe Parameter und warum greifst du nicht direkt auf die externen Parameter zu? Oder definierst einen Array wo du Zahlwerte hast und greifst mit einer Schleife darauf zu? Gruss, Hosch |
Hallo Hosch,
die Schleife brauch ich, weil das 60 Werte sind und ich nicht 60x Einzelschritte kopieren will. Der Tipp mit der Array bringt mich aber auf gute Gedanken. Ich glaube, damit kann ichs lösen. Vielen Dank Stefan |
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:03 Uhr. |
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum