Справочник MQL4 Основы языка Переменные Статические переменные
Статические переменныеКласс памяти static определяет статическую переменную. Модификатор static указывается перед типом данных. Пример:
Статическая переменная может быть проинициализирована соответствующей ее типу константой или константным выражением, в отличие от простой локальной переменной, которая может быть проинициализирована любым выражением. Статические переменные существуют с момента выполнения программы и инициализируются однократно сразу после загрузки программы. Если начальные значения не указаны, то переменные статического класса памяти принимают нулевые начальные значения. Время жизни статических переменных такое же, как и у глобальных переменных: от загрузки до выгрузки mql4-программы. Область их видимости - локальна, в пределах блока, в котором они объявлены. Локальные переменные, объявленные с ключевым словом static, сохраняют свои значения в течение всего времени существования функции. При каждом следующем вызове функции такие локальные переменные содержат те значения, которые они имели при предыдущем вызове. Любые переменные в блоке, кроме формальных параметров функции, могут быть определены как статические. Если переменная, объявленная на локальном уровне не является статической, то распределение памяти под такую переменную производится автоматически. Пример:
Смотри также Типы данных, Инкапсуляция и расширяемость типов, Инициализация переменных, Область видимости и время жизни переменных, Создание и уничтожение объектов, Статические члены класса |