Fehler, Irrtümer, Fragen - Seite 726

 
sergeev:

Ja, Renat, das ist mein Code.

In früheren Builds hat es funktioniert. Aber in der aktuellen 630/64 funktioniert es nicht mehr.

Der Fehler, den ich gefunden habe, ist ziemlich seltsam und, offen gesagt, erschreckend.

Entschuldigung, jetzt habe ich es verstanden.

Ja, die 630er Version war fehlerhaft, aber wir haben sie bereits korrigiert und veröffentlichen eine neue Version.

Entschuldigung für die Fehler, es ist sehr frustrierend.

 

Was bedeutet die Beschriftung der Variablen (String-Array-Element)?

Ausdruck kann nicht ausgewertet werden?

Ein Array in einer Klasse. Das Array ist dynamisch.

 
sergeev:

Was bedeutet die Beschriftung der Variablen (String-Array-Element)?

Ausdruck kann nicht ausgewertet werden?

Ein Array in einer Klasse. Das Array ist dynamisch.

Der Ausdruck kann nicht ausgewertet werden.

Geben Sie bitte ein Stück Code an.

 
Renat:

Ausdruck kann nicht geparst werden.

Geben Sie bitte ein Stück Code an.


#define CHART_LPROP     43
#define CHART_DPROP     6
#define CHART_SPROP     1

//------------------------------------------------------------------ class CTmpChart
class CTmpChart
{
public:
        // свойства
        long lprm[CHART_LPROP+3];
        double dprm[CHART_DPROP];
        string sprm[CHART_SPROP+1];

......
}

//------------------------------------------------------------------ Reset
void CTmpChart::Reset() // сброс всех значений
{
	// сбрасываем свойства
	string nul=NULL; 
	for (int i=0; i<CHART_LPROP+3; i++) lprm[i]=-1;
	for (int i=0; i<CHART_DPROP; i++) dprm[i]=-1;
	for (int i=0; i<CHART_SPROP+1; i++) sprm[i]=nul; // пришлось сделать так, иначе код слетает на присвоении sprm[i]=NULL 
}

//------------------------------------------------------------------ Copy
void CTmpChart::Copy(CTmpChart &a)
{
        for (int i=0; i<CHART_LPROP+3; i++) lprm[i]=a.lprm[i];
        for (int i=0; i<CHART_DPROP; i++)   // на этом цикле через раз (поймать стабильный глюк не получилось) терминал закрывается как процесс
          dprm[i]=a.dprm[i];
        for (int i=0; i<CHART_SPROP+1; i++) // на этом цикле бывает два варианта, 1) при подходе на эту строку цикла будет креш, 
          sprm[i]=a.sprm[i]; // 2) если цикл доживает к этой строке , то на ячейке sprm[i] (не из а.) - будет "Expression cannot be evaluated" и тоже креш
}

alle Arrays sind bereits zurückgesetzt.

Ich habe es mit Dynamic versucht, das Ergebnis ist das gleiche.

Dieser Fehler tritt nur bei 630/64 auf.

 

MQL5: Добавлен асинхронный метод посылки торговых запросов OrderSendAsync.

Wird die neue Funktion die alte OrderSend-Funktion ergänzen oder vollständig ersetzen?
 
Yedelkin:
Wird die neue Funktion die alte OrderSend-Funktion ergänzen oder vollständig ersetzen?

Nachtrag. Gegenwärtig ist sie wie folgt definiert


 
Rosh:

Nachtrag.

Großartig. Das Handbuch enthält vorläufig noch keine Informationen.
 
Rosh:

Gegenwärtig hat er die folgende Definition

Die Beschreibung sollte sofort korrigiert werden: "DieFunktion OrderSend() ist vorgesehen für..." sollte ersetzt werden durch "Die Funktion OrderSendAsync() ist vorgesehen für...". Und weiter in der Codebeschreibung.

 
Die neue Funktion hat keinen Einfluss auf die Wettbewerbsregeln.
 
Rosh:

Nachtrag. Im Moment hat sie diese Definition...

Ich erinnere mich, dass Renat einen Haftungsausschluss gegeben hat, und dennoch nehme ich meine Frage ernster:

Wird es in Zukunft ein einfacheres Schema geben, um festzustellen, welcher Auftrag OnTrade ausgelöst hat?

Die Frage ist vor allem im Hinblick auf die Einführung der neuen Funktion OrderSendAsync() relevant.

Grund der Beschwerde: