Назад: Порядок работы интерпретатора
Переменные
Иногда в процессе игры нам требуется на время сохранить какую-либо информацию. Например, герой срывает с дерева яблоки, и нам нужно куда-то "записать", сколько яблок он сорвал. Или же в результате битвы погибает злодей, и нам нужно, чтобы плеер "запомнил", что злодей погиб. Для таких вот "записей", "запоминаний", и существуют переменные.
Переменная - это именованная "ячейка памяти". То есть это некий кусочек памяти в программе, которому мы назначаем имя.
Для удобства можно представлять переменную, как коробку, в которую мы что-нибудь "складываем", например число, или фрагмент текста (или даже несколько значений одновременно - кортеж).
Типы переменных
Память программ работает совсем не так, как наша, и "запоминать" они могут только определённого типа значения. QSP умеет "запоминать" только целочисленные (числовые) и строковые значения. Особняком можно отметить кортежи, которые позволяют упаковать в одну переменную сразу группу значений.
Поэтому и переменные в QSP делятся на три типа:
- Целочисленные
- Строковые
- Кортежи
В целочисленных переменных (иногда для краткости их называют просто числовыми) мы можем хранить только целые числа в пределах от -2147483648 до 2147483647.
Если мы не поместили никакого значения в целочисленную переменную, то считается, что она хранит значение 0. Это значение по умолчанию для числовых переменных.
В строковых переменных (иногда их называют текстовыми переменными) мы можем хранить целые строки текста, и длина таких строк может доходить до двух Гигабайт. Строка не может превысить объём оперативной памяти.
Если мы не поместили никакого значения в строковую переменную, то считается, что она хранит пустую строку, т.е. строку совсем без символов. Это значение по умолчанию для строковых переменных.
В кортежах мы можем хранить сразу группу значений, причём это могут быть значения любого из трёх типов: числовые, строковые и другие кортежи. Не рекомендуется создавать очень большие кортежи, хотя теоретически кортежи могут быть очень большими. Если вам и правда понадобится настолько большой кортеж, примите во внимание, что как и со строкой, объём занимаемых кортежем данных не может превысить двух Гигабайт, или объёма оперативной памяти.
В переменной можно хранить значение только одного типа! Переменные %яблоко, $яблоко и яблоко — это одна и та же переменная, но с разным типом значения, которое в ней хранится.