MetaTrader 4 Build 529 beta mit neuem Compiler veröffentlicht - Seite 16

 
artamir:

Also funktioniert mein ctrl+F1 nicht :( Ich weiß nicht

Was soll diese Kombination bewirken? F1 Hilfe funktioniert, wenn es um.
 
ALXIMIKS:

die Variable muss initialisiert werden.

Jetzt müssen alle Datumswerte initialisiert werden?

 
ALXIMIKS:

Was soll die Kombination bewirken? F1 funktioniert, wenn es darum geht.
Ich danke Ihnen.
 
artamir:
Ich danke Ihnen.


Nun, ich würde sagen, Sie sind willkommen)) es ist nicht sehr gut tatsächlich (( eine Menge von Diskrepanzen mit dem Compiler die Realitäten

 

Wenn Sie die Parameter eines bereits laufenden und funktionierenden Indikators ändern, indem Sie auf ihn doppelklicken, soll das so sein?

der Indikatoraktualisiert keine statischen Variablen, deshalb wird er nicht neu gezeichnet?

 

Ich habe auf verschiedenen Computern, einem mit XP und einem anderen mit W 7, etwas Merkwürdiges festgestellt

Wenn ein Array innerhalb einer Funktion initialisiert wird, wird das Array nicht vollständig gefüllt, sondern nur mit dem Wert 0 ...

Wenn ein Array außerhalb aller Funktionen global initialisiert wird, werden die Arrays vollständig gefüllt, wie es sein sollte ...

 
Geben Sie mir bitte ein Beispiel für den Code. Hier liegt höchstwahrscheinlich der Fehler.
 
Renat:
Bitte geben Sie uns ein Beispiel für den Code. Hier liegt höchstwahrscheinlich der Fehler.
Es funktioniert in dieser Form...
//=====================================================================================// 
// Функция пишет комментарии 
//=====================================================================================//  
string info [];
color  cv   [];

void pr (string txt, color et)
{
int Coment = 10;

ArrayResize(info,Coment);
ArrayResize(cv,Coment  );

txt=txt+"  -"+TimeS();
for(i=Coment-1; i>=1; i--){info[i]=info[i-1]; cv  [i]=cv  [i-1];}info[0]=txt;cv[0]=et;
for(i=Coment-1; i>=0; i--)
   if(info[i]!="")
     {
      if(ObjectFind("txt"+(string)i)==-1)
      ObjectCreate ("txt"+(string)i,OBJ_LABEL,0,0,0);
      ObjectSet    ("txt"+(string)i,OBJPROP_CORNER,3);
      ObjectSet    ("txt"+(string)i,OBJPROP_XDISTANCE,10);
      ObjectSet    ("txt"+(string)i,OBJPROP_YDISTANCE,0+15*(Coment-i));
      ObjectSetText("txt"+(string)i,info[i], 10, "Verdana",cv[i]);
     }

}

So funktioniert das nicht.

//=====================================================================================// 
// Функция пишет комментарии 
//=====================================================================================//  
void pr (string txt, color et)
{
int Coment = 10;
string info [];
color  cv   [];
ArrayResize(info,Coment);
ArrayResize(cv,Coment  );

txt=txt+"  -"+TimeS();
for(i=Coment-1; i>=1; i--){info[i]=info[i-1]; cv  [i]=cv  [i-1];}info[0]=txt;cv[0]=et;
for(i=Coment-1; i>=0; i--)
   if(info[i]!="")
     {
      if(ObjectFind("txt"+(string)i)==-1)
      ObjectCreate ("txt"+(string)i,OBJ_LABEL,0,0,0);
      ObjectSet    ("txt"+(string)i,OBJPROP_CORNER,3);
      ObjectSet    ("txt"+(string)i,OBJPROP_XDISTANCE,10);
      ObjectSet    ("txt"+(string)i,OBJPROP_YDISTANCE,0+15*(Coment-i));
      ObjectSetText("txt"+(string)i,info[i], 10, "Verdana",cv[i]);
     }
}
 
Versuchen Sie ArrayInitialize beim ersten Start.
 
VOLDEMAR:
Das funktioniert so ...

So funktioniert es nicht

Hat es vorher funktioniert? Ich kann nicht herausfinden, wofür Sie die Variable i deklarieren:

for(i=Coment-1; i>=1; i--){info[i]=info[i-1]; cv  [i]=cv  [i-1];}info[0]=txt;cv[0]=et;
for(i=Coment-1; i>=0; i--)