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

 

::Print() 함수가 Tools\Experts 창에 긴 문자열 (260자 이상)을 표시하는 경우 RMB\Copy를 통해 이 문자열을 복사하면 256자로 잘립니다.


RMB\View\RMB\Copy를 통해 복사하면 잘림이 발생하지 않습니다.

차이점이 뭐야?

 
A100 :

생각할 필요 없음

 #define MACRO( ТОЛЬКО_НЕ_void )     Print ( "OK" )
void OnStart () { MACRO(); }

흠, 모든 것이 당신에게 어렵습니다 ...... 고슴도치가 인사합니다!

 #define   test( int ) for ( int i= 0 ;i< 10 ;i++) Print ( "OK" );
//+------------------------------------------------------------------+
void OnStart ()
  {
  test();
  }

'i' - 선언되지 않은 식별자 tst.mq5 열여섯

void 옵션은 문제없이 작동합니다. 음, 거기에서 더 잘 알고 있습니다. 캡을 제거하는 것을 잊지 마십시오.
 
A100 :

생각할 필요 없음

 #define MACRO Print ( "OK" )
void OnStart () { MACRO; }

그리고 매크로 뒤의 괄호가 당신의 영혼을 따뜻하게 해준다고 생각하십니까?

그리고 예, 매크로 매개변수 선언에 예약어를 사용하는 것은 맹렬한 버그를 만들기 위한 전제 조건에 대한 그런 종류의 사랑입니다. 글쎄, 네, 개발자가이 흥미 진진한 행동으로부터 우리를 보호하지 않았기 때문에 모두가 자신의 다리를 쏘는 방법을 스스로 결정합니다. 우리는 그들을 존중합니다)))

마지막으로 매크로 매개변수가 무엇이며 어떻게 사용되는지 이해하십시오.

 
Igor Makanu :

흠, 모든 것이 당신에게 어렵습니다 ...... 고슴도치가 인사합니다!

'i' - 선언되지 않은 식별자 tst.mq5 열여섯

void 옵션은 문제없이 작동합니다. 음, 거기에서 더 잘 알고 있습니다. 캡을 제거하는 것을 잊지 마십시오.
 void OnStart ()
  {
   for (i= 0 ;i< 10 ;i++) Print ( "OK" );;
  }

다음은 출력에서 전처리기가 수집한 것입니다.

추신 2 ; - 이것은 내 오타가 아니며 전처리기 이후에 실제가 될 것입니다.
 
Igor Makanu :

void 옵션은 문제없이 작동합니다. 음, 거기에서 더 잘 알고 있습니다. 캡을 제거하는 것을 잊지 마십시오.

이 특별한 경우에는 작동하지만 일반적인 경우에는 작동하지 않습니다. 특별한 경우에 대한 최악의 솔루션 - 아무도 필요하지 않습니다. void는 여전히 이해하지 못하는 경우 모든 키워드를 의미합니다.

 
Vladimir Simakov :

그리고 매크로 뒤의 괄호가 당신의 영혼을 따뜻하게 해준다고 생각하십니까?

그리고 예, 매크로 매개변수 선언에 예약어를 사용하는 것은 맹렬한 버그를 만들기 위한 전제 조건에 대한 그런 종류의 사랑입니다. 글쎄, 네, 개발자가이 흥미 진진한 행동으로부터 우리를 보호하지 않았기 때문에 모두가 자신의 다리를 쏘는 방법을 스스로 결정합니다. 우리는 그들을 존중합니다)))

마지막으로 매크로 매개변수가 무엇이며 어떻게 사용되는지 이해하십시오.

당신을 위해 구체적인 주장이 있습니다. "C++에서는 모든 것이 제대로 작동합니다." 그것에 대해 이의가 있습니까? 아니다? 그런 다음 자신의 도덕을 지키십시오. 그리고 당신은 그것을 알아낼 필요가 있습니다 - 왜 괄호가 있는지 명확하지 않은 경우

PS Igor Makanu 가 이것을 제안 했습니다 - 그에 대해 글을 쓰십시오
 
A100 :

이 특별한 경우에는 작동하지만 일반적인 경우에는 작동하지 않습니다. 특별한 경우에 대한 최악의 솔루션 - 아무도 필요하지 않습니다. void는 여전히 이해하지 못하는 경우 모든 키워드를 의미합니다.

알았어, 해봐, 너랑 얘기하는 건 좋지 않아. 무언가는 항상 당신을 개인적으로 끌어들이고 있습니다. 저는 이 포럼의 기술 주제에 더 관심이 있습니다.

블라디미르 시마코프 :

다음은 출력에서 전처리기가 수집한 것입니다.

추신 2 ; - 이것은 내 오타가 아니며 전처리기 이후에 실제가 될 것입니다.

예, 모든 것이 분명합니다.

질문은 순전히 기술적 인 방법으로 정확했습니다.

모든 유형을 기록하면 쓰레기가 나올 것으로 예상되었습니다. 발생했습니다. 거의 사용하지 않습니다(기본적으로 매크로 BUY(이중 로트) 또는 BUY()로 보내는 주문 을 작성합니다). - 저는 항상 여기에서 void를 사용했습니다. 문제가 없었고 없어야합니다

 
A100 :

당신을 위해 구체적인 주장이 있습니다. "C++에서는 모든 것이 제대로 작동합니다." 그것에 대해 이의가 있습니까?

그리고 C#, JS 및 나머지가 있습니다. 여기 mql 만 있고 이와 같이.
 
Igor Makanu :

알았어, 해봐, 너랑 얘기하는 건 좋지 않아. 무언가는 항상 당신을 개인적으로 끌어들이고 있습니다. 저는 이 포럼의 기술 주제에 더 관심이 있습니다.

좋지 않아? 기술적인 주제에 관심이 있습니까? 당신의 이 메시지 로 판단할 때, 내가 이해하는 한 당신은 BDSM 주제에 더 관심이 있습니다. 나는 당신과 의사 소통합니다 - 당신의 언어로 - 당신의 어휘를 사용하여

 
Vladimir Simakov :
그리고 C#, JS 및 기타 모든 것이 있습니다. 여기 mql 만 있고 이와 같이.

그리고 C#, JS 및 기타 모든 것이 그것과 무슨 관련이 있습니까? MQL 문서 - 첫 번째 페이지를 읽게 됩니다.

"MQL5 언어의 구문은 C++의 구문과 유사합니다."

https://www.mql5.com/ru/docs/basis .

Документация по MQL5: Основы языка
Документация по MQL5: Основы языка
  • www.mql5.com
Язык MetaQuotes Language 5 (MQL5) является объектно-ориентированным языком программирования высокого уровня и предназначен для написания автоматических торговых стратегий, пользовательских технических индикаторов для анализа разнообразных финансовых рынков. Он позволяет не только писать разнообразные экспертные системы, предназначенные для...