Ссылка на оригинальную статью.
Мы уже сталкивались с переменными в нескольких примерах из предыдущих статей. В переменных, как и в свойствах (но не во всех), содержатся значения:
1 2 3 4 5 6 7 8 9 |
class Main { static var member:String = "bar"; public static function main() { trace(member); member = "foo"; trace(member); } } |
Из примера видно, что переменная:
- имеет имя (в данном случае:
member
), - имеет тип (в данном случае:
String
), - может быть инициализирована (в данном случае значением:
"bar"
) и - может иметь модификаторы доступа (в данном случае:
static
)
Метод main выведет значение переменной member присвоенное ей при инициализации, затем изменит его на «foo», и снова выведет содержимое. Значение модификаторов доступа в данном примере, объясняется в отдельной статье.
Важно заметить, что явное указание типов не обязательно, если присутствует начальная инициализация. В этом случае, компилятор определяет тип переменной сам (см. Определение Типов).
Схема 1: Инициализация переменной.
Рассмотрим следующий пример. Воспользовавшись Схемой 1, объявим константу:
1 2 3 4 5 6 7 |
class Test { public static inline var myconst = 1; static function main() { trace(myconst); } } |
Метод main выведет: 1. (Ссылка на выполнение кода из примера)
Так как в Haxe не существует квалификатора const
, в качестве альтернативы, в данном примере мы используем ключевое слово inline
для статических переменных. (Подробнее про inline)
В случае, если мы попытаемся присвоить какое-либо значение константе myconst, при компиляции кода, мы получим ошибку «Cannot access field or identifier myconst for writing» (в переводе «Невозможно получить доступ для записи в поле либо идентификатор myconst«).
Для отправки комментария необходимо войти на сайт.