오류, 버그, 질문 - 페이지 2023

 
Kirill Belousov :

함수가 선언될 때 const에 관계없이 들어오는 인수의 유형에 의해 재정의가 있는지 확인해야 한다는 것을 의미합니까?

아니면 ArrayMinimum 시스템 함수 템플릿 에 const 옵션을 추가해야 합니까?

https://www.mql5.com/ru/docs/array/arrayminimum

 int    ArrayMinimum ( 
   const void &   array[],             // массив для поиска 
   int            start= 0 ,             // с какого индекса начинаем поиск 
   int            count= WHOLE_ARRAY      // количество проверяемых 
   );
그리고 경고가 부적절합니다.
Документация по MQL5: Операции с массивами / ArrayMinimum
Документация по MQL5: Операции с массивами / ArrayMinimum
  • www.mql5.com
//| Закрашивание основной части свечи                                | //
 
fxsaber :

https://www.mql5.com/ru/docs/array/arrayminimum

그리고 경고가 부적절합니다.
경고는 어디에서 분명합니다 - 깜박이고 텍스트 배열이 숫자 값을 위한 작업으로 허용되었습니다.
 
Kirill Belousov :
경고는 어디에서 분명합니다 - 깜박이고 텍스트 배열이 숫자 값을 위한 작업으로 허용되었습니다.

나는 깜박하지 않았다, 왜냐하면 해당 ArrayMinimum을 작성했습니다. 그러나 그것은 허용되며 자체 이유로 호출되지 않습니다. 그래서 이 주장은

 void OnStart ()
{
   string Str[];
  
   int i = ArrayMinimum (Str); // Warning: possible loss of data due to type conversion
   ArraySort (Str); // Warning: expression has no effect
   ArrayFill (Str, 0 , 1 , 0 ); // Error: 'Str' - type mismatch
}

빨간색은 노란색 컴파일러 메시지 여야 합니다. Reds는 여전히 다릅니다.

 
fxsaber :

나는 깜박하지 않았다, 왜냐하면 해당 ArrayMinimum을 작성했습니다. 그러나 그것은 허용되며 자체 이유로 호출되지 않습니다. 그래서 이 주장은

빨간색은 노란색 컴파일러 메시지 여야 합니다. Reds는 여전히 다릅니다.

"놓친" - 정원이 아닙니다. :)

저는 이렇게 봅니다. 개발자들은 모든 배열을 시스템 함수로 사용하는 작업에 대한 함수 이름을 지정했지만 지금까지는 숫자 배열에서만 작동하도록 구현했습니다.

그러나 여기에서 "스텁"이 모든 경우에 대해 설정되지 않았으며 메시지가 "주제에서 벗어난" 사용자에게 발행된 것으로 나타났습니다.

이것은 수정해야 합니다 - 100% 동의합니다.

 

이 상황을 겪은 사람이 있습니까(MT4):

EA는 많은 차트에서 작동합니다(하나의 템플릿을 기반으로 설치됨). 모든 것이 프로필에 저장됩니다. VPS 에서 24시간 내내 작업 할 수 있습니다.

갑자기 일부 그래프에서 설정 창을 열면 모든 문자열 변수에 빈 값이 포함되어 있는 것으로 나타났습니다. (가짜 포함 - "---HERE FILTER---"와 같은 설정 섹션을 지정하는 경우에만)

터미널은 다르고 시장의 다른 저자와 고문이 있습니다.

터미널을 다시 시작하지 않았습니다. 일부러 설정을 바꾸지 않았습니다.

 


안녕하세요, 상담원의 도움을 부탁드립니다. 테스트를 시작했는데 EA.mq4'(149,49)에서 범위를 벗어난 오류 배열을 제공합니다. (int li_8 = li_4; li_8 > 0; li_8--) aia_0[li_8] = aia_0[li_8 - 1]; EA의 이 코드 부분이 제거되면 테스터는 시작되지만 거래 EA는 열리지 않습니다. 작동하려면 이 코드에서 무엇을 변경해야 하는지 알려주십시오.

 
Ivan Lysenkov :


안녕하세요, 상담원의 도움을 부탁드립니다. 테스트를 시작했는데 EA.mq4'(149,49)에서 범위를 벗어난 오류 배열을 제공합니다. (int li_8 = li_4; li_8 > 0; li_8--) aia_0[li_8] = aia_0[li_8 - 1]; EA의 이 코드 부분이 제거되면 테스터는 시작되지만 거래 EA는 열리지 않습니다. 작동하려면 이 코드에서 무엇을 변경해야 하는지 알려주십시오.

디컴파일러로 작업하고 있습니까? 그만한 가치가 있습니까? 여기 -이 리소스에서 - 도난당한 코드에 대한 작업 및 토론에 대한 엄격한 금지.

 
Kirill Belousov :

이 상황을 겪은 사람이 있습니까(MT4):

EA는 많은 차트에서 작동합니다(하나의 템플릿을 기반으로 설치됨). 모든 것이 프로필에 저장됩니다. VPS에서 24시간 내내 작업할 수 있습니다.

갑자기 일부 그래프에서 설정 창을 열면 모든 문자열 변수에 빈 값이 포함되어 있는 것으로 나타났습니다. (가짜 포함 - "---HERE FILTER---"와 같은 설정 섹션을 지정하는 경우에만)

터미널은 다르고 시장의 다른 저자와 고문이 있습니다.

터미널을 다시 시작하지 않았습니다. 일부러 설정을 바꾸지 않았습니다.

템플릿이 충돌할 때 저장해야 했습니다.

 
fxsaber :

템플릿이 충돌할 때 저장해야 했습니다.

이해하지 못했습니다.

난 그냥 차트에 고문을 넣어. 원하는 설정을 지정하고 템플릿으로 저장합니다.

즉, 모든 차트가 동일한 설정을 가졌음을 의미합니다. 일부의 경우 문자열 변수는 나중에 설정에서 0으로 재설정되었습니다.

나는 이것을 우연히 발견했습니다 - 거래에 대한 댓글이 표시되지 않음


저는 지난 4월 SD에 지원서를 작성했습니다. 그러나 오늘 요청 후 알게 된 것처럼 집에서 상황을 재현 할 수 없었습니다.

그 이후로 extern에서 문자열 매개변수의 신뢰성에 대해 확신을 갖지 못했습니다.

템플릿을 적용한 직후의 방법은 다음과 같습니다.


다음은 글리치가 트리거된 후의 방법입니다.


다음은 결함이 있는 EA가 있는 차트 프로그램과 결함이 없는 차트를 비교한 것입니다(둘 다 동일한 템플릿으로 열림)


 
Kirill Belousov :

이해하지 못했습니다.

글리치 이후에 저장된 템플릿을 보는 것은 흥미로웠습니다. 마지막 화면에서 보여주신 것 같습니다.

실행 중인 모든 EA의 입력을 읽고 입력이 변경되면 경고음을 내는 EA를 작성하십시오. 그러면 추적할 수 있습니다.