Ссылка на оригинальную статью.
Мы уже сталкивались с переменными в нескольких примерах из предыдущих статей. В переменных, как и в свойствах (но не во всех), содержатся значения:
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«).
- e-olymp 2164. Шифр Юлия - 01.06.2017
- А137д - 01.06.2017
- Ю 4.25 - 13.05.2017
— Что за абракадабра «Переменные содержат значения, характеристика, которую они разделяют с большинством свойств (но не со всеми)». Я не спорю, что Гугл как-так и переведет. но вы-то знаете, что такое переменные и свойства? Вот и объясните по человечески. Что здесь хотел сказать автор руководства? Разберитсь и уточните.
— А здесь — «объясняется в отдельной статье» — сделайте ссылку.
— Потеряли ссылку на «Type Inference»
— «Инициализация значений в переменной»? На этом языке так не говорят. Посмотрите этот раздел в любом учебнике программирования, чтобы пользоваться правильными оборотами речи.
— Нет ни собственного кода, ни текста.
Исправил 🙂
Тогда следующая порция замечаний 🙂
— Сделайте правильные отступы. Даже там, где они правильные, один символ мало.
— Относительные адреса статьи учебника на этом сайте имеют простой формат — href=»2-1″ ссылается на страницу раздела 2.1 учебника. У вас ссылки либо битые, либо неправильные. Нужно исправить.
— Сделайте, пожалуйста, ссылку для выполнения Вашего кода.
А вообще уже значительно лучше.
Сделал ссылки в простом формате, но они ссылаются на статьи которые в данный момент не опубликованы.
Поправил отступы.
Добавил ссылку на выполнение кода.
Изменил фото на граватаре. Могли бы Вы избавить меня от душераздирающих -10?)
От -10 избавил.
Теперь люди начнут узнавать Вас на улице 🙂
По последнему примеру.
— Действ inline не позволяет в дальнейшем менять значение, но в своём тексте Вы на это даже не намекнули. Уж намекните. Иначе получается, что пример поясняет что-то чего в статье нет и не поясняет то, что есть.
— Расставьте пожалуйста отступы в коде по Вашей ссылке.
Добавил про инлайн, отступы расставил.
Совсем уж мало баллов остается за статью, а я так старался 🙁
Да, видимо, я тоже 🙁