MetaTrader 4 Build 529 베타가 새로운 컴파일러와 함께 출시됨 - 페이지 16

 
artamir :

그래서 ctrl+F1이 작동하지 않습니다 :(모르겠습니다

이 조합은 무엇을 제공해야합니까? F1이 그것에 대해 작동하는 것을 도와주세요.
 
ALXIMIKS :

변수를 초기화해야 합니다.

이제 모든 datetime을 초기화해야 합니까?

 
ALXIMIKS :

이 조합은 무엇을 제공해야합니까? F1이 작동하는 경우 도움이 됩니다.
고맙습니다.
 
artamir :
고맙습니다.


글쎄, 나는 아무것도 없다고 말할 것입니다)) 실제로 그렇게 좋지 않습니다 (( 컴파일러의 현실과 많은 불일치가 있습니다

 

따라서 이미 실행되고 작동 하는 표시기의 매개변수를 변경할이를 두 번 클릭하여 ,

정적 변수의 업데이트가 없습니다 . 나쁜 표시기라는 관점에서 볼 때 다시 그려지지 않습니다 ???

 

XP가 설치된 컴퓨터와 W 7이 설치된 컴퓨터에서 이상한 점을 발견했습니다.

함수 내에서 배열을 초기화 할 때 배열 전체가 채워지지 않고 0 값만 ...

모든 함수 외부의 전역 수준에서 배열을 초기화할 때 배열은 원래대로 완전히 채워집니다...

 
코드 예제를 주세요. 오류가 있을 가능성이 큽니다.
 
Renat :
코드 예제를 주세요. 오류가 있을 가능성이 큽니다.
이렇게 작동합니다...
 //=====================================================================================// 
// Функция пишет комментарии 
//=====================================================================================//  
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]);
     }

}

이렇게 작동하지 않습니다

 //=====================================================================================// 
// Функция пишет комментарии 
//=====================================================================================//  
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]);
     }
}
 
처음 실행할 때 ArrayInitialize 를 시도하십시오.
 
VOLDEMAR :
이렇게 작동합니다...

이렇게 작동하지 않습니다

모든 것이 이전에 작동했습니까? i 변수를 선언한 위치를 알 수 없습니다.

 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--)