- マクロ代入( #define )
- プログラムのプロパティ (#property)
- ファイルの読み込み (#include)
- 関数のインポート( #import )
- 条件付きコンパイル( #ifdef、#ifndef、#else、#endif )
프리프로세서
프리프로세서는 프로그램 컴파일 직전에 프로그램 소스 코드를 준비하기 위한 MQL5 컴파일러의 특수 하위 시스템입니다.
프리프로세서를 사용하면 소스 코드 가독성을 향상시킬 수 있습니다. 이 코드는 mql5-프로그램의 소스 코드가 포함된 특정 파일을 포함하여 구성할 수 있습니다. 특정 상수에 니모닉 이름을 할당할 수 있으므로 코드 가독성이 향상됩니다.
전처리 기능을 사용하면 mql5-프로그램의 특정 매개 변수를 확인할 수도 있습니다:
프리프로세서 명령문은 컴파일하기 전에 소스 코드를 전처리하는 데 사용됩니다. 명령문은 항상 #로 시작하므로 컴파일러는 변수, 함수 등의 이름에 기호를 사용할 수 없습니다.
각 명령문은 별도의 항목으로 설명되며 줄 바꿈까지 유효합니다. 한 항목에는 여러 명령문을 사용할 수 없습니다. 지시어 입력이 너무 크면 '\' 기호를 사용하여 여러 줄로 구분할 수 있습니다. 이 경우 다음 행은 명령문 입력의 연속으로 간주됩니다.
//+------------------------------------------------------------------+
|
컴파일러의 경우 이 세 가지 #define 명령문들이 모두 하나의 긴 줄처럼 보입니다. 위의 예제는 #definite 매크로에서 두 매크로 토큰을 하나로 병합하는 데 사용되는 병합 연산자 ## 문자도 적용합니다. 토큰 병합 연산자는 매크로 정의의 처음 또는 마지막 연산자가 될 수 없습니다.