Geben Sie mir SetLastError!!! - Seite 3

 
VladislavVG:
Und schauen Sie nach, wo ich über Fehlerbehandlung geschrieben habe - es gibt Forenbeiträge ;)

Aus irgendeinem Grund habe ich hier nicht den richtigen Rat von dir bekommen :) In MQL5 haben sie es in MQL4 richtig gemacht, man kann es mit einem Include beheben, das ist alles :)
 
vit46:

Aus irgendeinem Grund habe ich hier nicht den richtigen Rat von dir bekommen :) Wovon reden Sie? MQL5 hat es richtig in MQL4 getan, Sie können es mit einem Includes beheben, das ist alles :)

Wenn Sie diesen Beitrag meinen:

 
vit46:
Очень нехвотает этой функции в MT4 что делать помогите!

Функция GetLastError() обнуляется после чтения ее значения. Вставьте дополнительное пустое считывание перед нужной Вам операцией.

int err=GetLastError();
OrderSend(...);

if (GetError()==конкретный номер){
         // код обработки сброс ошибки или наоборот
         SetError(0);
         }
else if(...)

Ich würde es nicht so machen: IMHO ist es falsch, oder besser gesagt nicht ganz richtig. Die anderen bestätigen mehr oder weniger, was ich Ihnen geraten habe ;) .....

 
VladislavVG:

Wenn Sie diesen Beitrag meinen:

Ich würde es nicht so machen: IMHO ist es falsch, oder besser gesagt nicht ganz richtig.

Entwickeln Sie das Thema.
 
Roger:
Entwickeln Sie das Thema.

Was gibt es zu entwickeln?

Fehler sollten sofort behoben werden, wenn sie auftreten, und nicht auf später verschoben werden.

 

Es steht bereits auf Seite zwei.

es verwenden.

int ticket=OrderSend();
if (ticket<0) // и только после этого
{  GetLastError()  }
 
VladislavVG:

Wenn Sie diesen Beitrag meinen:

Ich würde es nicht so machen: IMHO ist es falsch, oder besser gesagt nicht ganz richtig. Die anderen bestätigen mehr oder weniger, was ich Ihnen geraten habe ;) .....


Das stimmt nicht, es ist besser, denn fortgeschrittene Sprachen sind in Bezug auf die Fehlerbehandlung so konzipiert... MQL5 wird also langsam aber sicher besser....
 
Что тут развивать?

Ошибки надо обрабатывать по мере их возникновения, а не откладывать "а потом".

Das ist klar. Ich selbst mache das nie, ich habe es als Lösung für das Problem angeboten. Aber ich würde gerne wissen, warum Sie dies nicht grundsätzlich tun können. Vielleicht werde ich in Zukunft darauf stoßen, und dann wird es nützlich sein.

 
sergeev:


Es steht bereits auf Seite zwei.

es verwenden.


Das ist nicht gut, denn wenn bei einem früheren Vorgang ein Fehler aufgetreten ist und dieser nicht bearbeitet wurde, wird der vorherige Vorgang bearbeitet, wenn im aktuellen Vorgang kein Fehler auftritt.
 
vit46:

Das ist nicht wahr, aber besser. Höher entwickelte Sprachen sind in Bezug auf die Fehlerbehandlung so konzipiert... MQL5 wird also langsam aber sicher besser....

Sie haben immer noch nicht geschrieben, was Ihr Vorschlag zur Verbesserung der MMS beiträgt.
 
sergeev:


Es steht bereits auf Seite zwei.

es verwenden.


Ja, das stimmt, und es entspricht auch meinem Ansatz... Der unbedingte Aufruf GetLastError kann nicht mit anderen Worten verwendet werden.