|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
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? Geändert von freitag (09.05.16 um 13:57 Uhr) |
|
|||
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 |
Lesezeichen |
Stichworte |
double, ea, expert advisor, mql4, programmierung, programmierung metatrader, string |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|