//Test.cpp#include "Test.h"#ifdef MACRO //не подсвечивается... но этот .cpp файл не предназначен для компиляции в MetaEditor,//а компилируется в С\С++, где макрос __MQL__ не является предопределенным//в результате подсвечивается то что не должно и наоборот не подсвечивается что должно#endif
이것은 잘못된 백라이트, 오해의 소지가 있는 백라이트가 없는 것보다 훨씬 더 나쁜 경우입니다(이전의 경우와 같이).
Директива #define подставляет expression вместо всех последующих найденных вхождений identifier в исходном тексте. identifier заменяется только в том случае, если он представляет собой отдельный токен. identifier не заменяется, если он является частью комментария, частью строки, или частью другого более длинного идентификатора. expression...
그리고 실제로 기성품 .dll(더 이상 변경할 수 없음)을 사용하는 경우 추가 정렬 없이는 할 수 없습니다. 그러나 x86 및 x64에서는 이 추가가 다르게 보일 수 있습니다. 이는 구조가 TerminalInfoInteger( TERMINAL_X64 )가 작동하지 않는 .mq5 파일의 컴파일 단계에서 설정되기 때문에 여전히 _WIN64의 유사체가 필요하다는 것을 의미합니다.
//Test.mq5
#ifdef _WIN64
#define ALIGN (8-2) //добавить к элементу структуры 6 байт
#else
#define ALING (4-2) //добавить к элементу структуры 2 байта
#endif
이제 추가 정보를 염두에 두어야 합니다. 사소하게 절약한 결과 미묘한 오류가 발생할 위험이 있습니다.
모든 것이 한계 내에 있습니다 ...
칠면조가 파일에서 배열로 데이터를 읽을 때 비슷한 일이 한 번 발생했지만 지금은 기억이 나지 않습니다 ...
애플리케이션 생성, 대기 중
터미널의 버전 및 비트 수
64 1755
문제에 대한 설명
표시기가 로드되지 않음
지표를 설정하고 지표가 작동하고 지표를 제거하면 지표가 제거되고 목록에 없지만 제거되지 않은 것처럼 작동하고 객체를 그립니다. 목록에 없습니다.
차트를 다시 열면 차트가 다른 악기의 차트인 경우에도 여전히 작동합니다.
컴파일 중 오류
#define \ MACRO
또한 줄 바꿈이 ALL 지시문에서 작동할 것으로 예상했습니다.애플리케이션 생성, 대기 중
터미널의 버전 및 비트 수
64 1755
문제에 대한 설명
표시기가 로드되지 않음
지표를 설정하고 지표가 작동하고 지표를 제거하면 지표가 제거되고 목록에 없지만 제거되지 않은 것처럼 작동하고 객체를 그립니다. 목록에 없습니다.
차트를 다시 열면 차트가 다른 악기의 차트인 경우에도 여전히 작동합니다.
같은 문제
같은 문제
재귀?
같은 문제
표시기 릴리스() ;
컴파일 중 오류
첨부파일을 컴파일 하셔야 합니다
그런 "틈"은 어디에서 얻었습니까? https://www.mql5.com/en/docs/check/terminalinfointeger 에 많은 것들이 있습니다. 마우스를 사용하여 Microsoft Edge에서 조각 복사
혼란스러운 매크로 강조 표시 - 컨텍스트에 의존하지 않음
항상 존재(옵션 B) 또는 항상 부재(옵션 A)
특정 행에 매크로가 정의되어 있으면 강조 표시되고, 정의되어 있지 않으면 강조 표시되지 않습니다. 그렇지 않으면 백라이트의 유무가 무엇을 의미하는지 명확하지 않습니다.MetaEditor에서 C\C++ 파일 강조 표시
https://www.mql5.com/ru/docs/basis/preprossor/constant
확장자가 .c, cpp, .h인 파일을 강조 표시할 때 지정된 매크로(__MQL__ 포함)를 사용할 수 없을 것으로 예상되었습니다.
이것은 잘못된 백라이트, 오해의 소지가 있는 백라이트가 없는 것보다 훨씬 더 나쁜 경우입니다(이전의 경우와 같이).
저는 포럼에서 _WIN64와 유사한 MetaEditor의 미리 정의된 매크로 부족에 대한 사용자 토론을 반복적으로 만났습니다. 메타에디터는 범용 32-64비트 코드를 동시에 생성하기 때문에 관리가 필요없다는 답변이 나왔다.
동시에 많은 사람들이 구조 필드를 추가하여 https://www.mql5.com/ru/forum/225498/page2#comment_6401835 정렬을 사용합니다.
그리고 실제로 기성품 .dll(더 이상 변경할 수 없음)을 사용하는 경우 추가 정렬 없이는 할 수 없습니다. 그러나 x86 및 x64에서는 이 추가가 다르게 보일 수 있습니다. 이는 구조가 TerminalInfoInteger( TERMINAL_X64 )가 작동하지 않는 .mq5 파일의 컴파일 단계에서 설정되기 때문에 여전히 _WIN64의 유사체가 필요하다는 것을 의미합니다.
이제 추가 정보를 염두에 두어야 합니다. 사소하게 절약한 결과 미묘한 오류가 발생할 위험이 있습니다.