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

 

설명 또는 구현 오류 '\n'

 void OnStart ()
{
         ushort ch = '\n' ;
         Print ( int (ch) );
}

결과: 10, 그러나 설명에서 - 13

https://www.mql5.com/ru/docs/basis/types/integer/symbolconstants

 

const가 배열이 아닌 포인터를 참조할 때 const 포인터 배열의 크기를 조정할 수 없습니다( ArrayResize ).

 class A {};
void f()
{
        const A * array1[];
              A * array2[];
         ArrayResize ( array1, 1 ); //ошибка компиляции
        ArrayResize ( array2, 1 );
}
const 대신 가능합니다. 차이점이 뭐야?
 

메모리 누수,

 class XYZ {
};
class A {
public :
};
void OnStart ()
{
        A *a = new A();
}

결과:

하지만... 개체 XYZ - 생성되지 않았습니다! 때로는 className이 정확하기 때문에 잘못된 이름이 아닐 수도 있습니다.

 

런타임 오류: 충돌

 class A {
public :
           void     operator =( A* a ) { f( a ); }
    virtual void           f( A* a ) {}
};
class B : public A {
public :
    virtual void           f( A* a ) {}
                A        *g() { return ( new B() ); }
};
void OnStart ()
{
        B b;
        B c = b.g();
}

빌드 989

 

이 옵션이 MQL에서 작동하지 않는 이유는 무엇입니까?

 static const int size= 10 ;
int array[size];
 
A100 :

런타임 오류: 충돌

빌드 969

메시지 주셔서 감사합니다! 점검 해보자
 
좋은 오후, 사이트에 그런 사진이있는 유일한 사람입니까 아니면 모든 사람이 가지고 있습니까?,)
 
Mechanic :
좋은 오후, 사이트에 그런 사진이있는 유일한 사람입니까 아니면 모든 사람이 가지고 있습니까?,)
죄송합니다. 저만 있는 것 같습니다. 오늘은 컴퓨터를 청소해야 합니다.
 
meat :

이 옵션이 MQL에서 작동하지 않는 이유는 무엇입니까?

그렇지 않으면 const를 계산할 수 없습니다.

 int f() { return ( 1 ); }
static const int size = f();

void OnStart ()
{
         int array[];
         ArrayResize ( array, size );
}
 

실수

부르다:

 Bars ( Symbol (), PERIOD_D1 );

결과 로그 메시지:

HistoryBase 'RTS-12.14' 1개의 잘못된 막대가 제거되었습니다.


나는 이미 이 오류에 지쳤습니다. 무엇보다도 통신 채널을 로드합니다.

확인되지 않은 다른 이유로 동일한 오류가 나타납니다.

그러나 흥미롭게도 다른 많은 악기에는 나타나지 않습니다. 무엇보다 RTS 선물에 나옵니다.


나는 몇 달 전에 서비스 데스크에 편지를 썼습니다. 대답은 아니오입니다( 응용 시작: 2014.07.28 13:41 , #1046215) .


현재(그리고 과거) RTS 선물(브로커 "O..."가 있는 데모 계정)의 모든 틱 에서 이 오류를 일으키는 터키 코드를 첨부합니다.

 #property version    "1.00"
#property indicator_separate_window
int OnInit (){ return ( INIT_SUCCEEDED );}
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
{
   Bars ( Symbol (), PERIOD_D1 );
   return (rates_total);
}

터미널 버그인가요? 아니면 브로커? 아니면 나?

무엇을 할까요? D1 기간의 막대 수를 다른 방법으로 알 수 있습니까?