Идентификаторы

Как мы скоро увидим, программы строятся из множества элементов, к которым необходимо обращаться по уникальным именам для избегания путаницы. Эти имена и принято называть идентификаторами.

Идентификатор — это составленное по определенным правилам слово: в нем разрешено использовать только символы латинского алфавита, символ подчеркивания ('_') и цифры, причем цифра не может быть первым символом. Буквы могут быть как строчными (нижний регистр), так и прописными (верхний регистр).

Максимальная длина идентификатора — 63 символа. Идентификатор не должен совпадать со служебными словами MQL5, в частности, с названиями типов. Полный список служебных слов можно найти в Справке. Нарушение любого из правил составления идентификатора приведет к ошибке компиляции.

Вот примеры правильных идентификаторов:

i             // один символ
abc           // строчные буквы
ABC           // прописные буквы
Abc           // смешанный регистр
_abc          // подчеркивание в начале
_a_b_c_       // подчеркивание в любом месте
step1         // цифра
_1step        // подчеркивание и цифра

В скрипте HelloChart мы уже видели использование идентификаторов в качестве имен переменных и названий функций.

Рекомендуется давать идентификаторам осмысленные названия, из которых становится ясно назначение или содержимое соответствующего элемента. В некоторых случаях принято использовать однобуквенные идентификаторы — о них мы поговорим в разделе про циклы.

Существует несколько общепринятых практик по составлению идентификаторов. Например, если мы выбираем имя для переменной, хранящей значение профит-фактора, хорошими кандидатами считаются следующие:

ProfitFactor   // "горбатый" стиль, все слова с заглавной буквы
profitFactor   // "горбатый" стиль, все слова кроме первого с заглавной буквы
profit_factor  // "змеиный" стиль, между всеми словами вставляется подчеркивание

Во многих языках программирования принято использовать разные стили для именования разных сущностей. Например, можно придерживаться практики, что переменные начинаются только с маленькой буквы, а названия классов (см. Часть 3) — только с большой. Это помогает программисту анализировать исходный код при работе в команде или если он возвращается к собственному фрагменту кода после долгого перерыва.

Помимо упомянутых выше, есть и другие стили, некоторые из них применяются в особых случаях:

profitfactor   // "ровный" стиль, все буквы строчные
PROFITFACTOR   // "ровный" стиль, все буквы заглавные
PROFIT_FACTOR  // "макро" стиль, все буквы заглавные с подчеркиванием между слов

Все заглавные буквы иногда используются в именах констант.

"Макро" стиль обычно применяется в именах макро-определений препроцессора.