Файлова система - MetaEditor - MQL4 Урок

Клиентският терминал разграничава видовете програми според местоположението им в подчинени директории.

Всички приложни програми се намират в директориятаTerminal_directory\experts. Експертни съветници, скриптове и персонализирани индикатори, които търговецът възнамерява да използва в практическата си работа, трябва да се намират в техните директории (вижте Фиг. 24). Експертите се намират директно в директориятаTerminal_directory\experts, докато скриптовете и индикаторите се намират в поддиректориитеTerminal_directory\experts\scriptsиTerminal_directory\experts\indicators.

система
Фиг. 24. Директории за съхраняване на файлове, създадени от потребителя.

Потребителят може да създава други директории по свое усмотрение и да съхранява някои от своите файлове в тях, но използването на готови програми, разположени в такива директории, не е предвидено в клиентския терминал.

Типове файлове

Езикът MQL4 разграничава 3 вида файлове, които носят програмен код: mq4, ex4 и mqh.

Файловете от типex4са компилирани програми, готови за практическа употреба в клиентския терминал. Този тип файл не може да се редактира. Ако трябва да направите промени в програмата, тогава трябва да се обърнете към нейния изходен код (файл тип mq4), да го редактирате и след това да го компилирате отново. По името на файла ex4 не може да се прецени към какъв тип програма принадлежи - дали е скрипт, експерт или индикатор. ex4 файловете могат да се използват като библиотечни файлове.

Файлове от типmqhса включени файлове. Това е изходният код за често използвани потребителски програмни блокове. Такива файлове могат да бъдат включени в изходните текстове на експертни съветници, скриптове и потребителииндикатори по време на компилиране. Включващите файлове обикновено съдържат описания на импортирани функции (вижте файловете stdlib.mqh или WinUser32.mqh като пример) или описания на общи константи и променливи (stderror.mqh и WinUser32.mqh). Файловете от типа mqh обикновено се съхраняват в директориятаTerminal_directory\experts\include.

Включващите файлове са наречени така, защото обикновено се „включват“ по време на компилиране в основния изходен файл с помощта на директивата #include. Въпреки факта, че файловете от типа mqh могат да съдържат изходния код на програмата и MetaEditor ги компилира, те не са независими и самодостатъчни, т.е. не изискват компилация, за да се получат изпълними файлове от тип ex4. Mq4 файловете могат да се използват и като включващи файлове, които също трябва да се съхраняват в директориятаTerminal_directory\experts\include.

В навигатора на клиентския терминал, в секциите „Експертни съветници“, „Персонализирани индикатори“ и „Скриптове“, се показват само тези имена на файлове, които имат разширение ex4 и се намират в съответната директория. Файловете, компилирани с по-стара версия на MetaEditor, няма да се изпълняват и са в сиво.

Има и други видове файлове, които не образуват цялостна програма, но се използват при създаването на приложни програми. Например една програма може да бъде компилирана от няколко отделни файла или за тази цел може да се използва предварително създадена библиотека. Потребителят може да създава библиотеки от дефинирани от потребителя функции, предназначени да съхраняват често използвани блокове от потребителски програми. Библиотеките се препоръчва да се съхраняват в директориятаTerminal_directory\experts\libraries. mq4 и ex4 файловете могат да се използват като библиотечни файлове. Библиотеките не могаткандидатствай за изпълнение. Използването на включени файлове е за предпочитане пред използването на библиотеки поради излишните изчислителни ресурси при извикване на библиотечни функции.

В първата част на урока „Въведение в програмирането на MQL4“ ще се интересуваме от файлове с изходен код на програма mq4 и компилирани ex4 програмни файлове.