Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Переменные, Массивы, Enum - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Переменные, Массивы, Enum - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Здравствуйте читатели форума pawn-wiki.ru, я приветствую вас в этой теме с обновленным уроком по переменным, массивам и enum'ам.

Надеюсь, прочитав этот урок, вы найдете для себя много нового . Давайте начнем с простого.

Переменные и как ими пользоватся

Сначала нам надо узнать, что вообще такое эти переменные. Переменная - это хранилище данных, куда мы можем записывать

различные данные для их последующего вызова. Тоесть действия с переменными предельно просты: запись информации,вывод и

использование информации. Если присмотрется ближе, то список можно пополнить еще одним пунктом - объявление переменной.

Каждая переменная имеет свое название, чтобы компилятор мог отличить друг от друга переменные, название мы задаем при

объявлении. Оператор объявления переменной - new. Вот пример объявления новой переменной:

Тут мы объявили переменную и назвали ее MyFirstVariable (моя первая переменная). Название могут быть, естественно, разные,

но помните, что павн не поддерживает кириллицу (это вам не 1с)! Перейдем к следующему пункту - запись информации. Запись

информации осуществляется с помощью оператора присвоения или различных функций. Рассмотрим оператор присвоения:

Таким образом мы присвоили предварительно созданной переменной значение 3. Ни в коем случае не путайте оператор присвоения(

= ) с оператором сравнения ( == ). Вот пример оператора объявления и оператора присвоения соединенных вместе:

Тоесть переменная будет равна трем изначально.

Из пункта запись информации вытекает пункт - изменение информации. Изменять информацию мы можем как с помощью оператора

присвоения,так и с помощью специальных операторов, список приведен ниже.

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

"преобразовываются" в значения которые записаны в переменной. Вот несколько примеров:

Ну думаю тут все легко и понятно. Так же хотелось бы разъяснить ситуацию с локальными переменными, поясню: переменные

объявленные в самом начале мода или не в пабликах/функциях (т.е не состоящие в фигурных скобках) называются глобальными (т.е

действуют абсолютно во всем моде), а состоящие в скобках - локальными. Локальные переменные дейсвуют во всех скобках

открытых после нее и "самоуничтожается" когда исполнение кода дойдет до закрытия скобок. Пример:

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

переменной двоеточием, они определяют тип данных в переменной. Известные нам теги:

Теги типа - DB, DBResult я писать не стал, т.к для их использования требуется отдельный инклуд.

Как я уже говорил, теги определяют тип данных в переменной, вот основные типы которые вам понадобятся:

Вот примеры работы с тегами в коде:

Так же хочу заметить, что переменным можно присваивать буквы как значение (для каждой переменной только одну!), пример:

Эта переменная будет носить значение буквы a. На данной стадии для нас это бесполезно, хотя потом пригодится. Внимание:

буквы разного регистра считаются РАЗНЫМИ!

Массивы

Для того, чтобы представить, что такое массивы, нам надо представить таблицу, в которой есть строки и столбцы. Массивы

бывают двух видов - одномерные и двумерные (есть еще тремерные (не знаю как пишется, правда), но извращатся с ними не стоит)

, теперь вернулись к нашей мысленной табличке и представили, что у нас есть 1 строка и некоторое кол-во столбцов в которые

записываются данные (цифра или буква или другие данные (зависит от тега)) - это одномерный массив, а теперь подключим еще и

строки, это уже будет двумерный массив. Примеры:

Следует помнить, что при указании размера массива указывается общее число элементов, а поскольку отсчет в любом языке

скриптинга идет с 0, то цифра указанная как размер массива в операциях с массивом использоватся не может (максимальная цифра

будет: размер массива - 1).

Также следует знать оператор который определяет размер массива и называется он sizeof, примеры:

С тегами и типами данных то же самое, что и в переменных.

Все члены массива будут носить данные вещественного типа.

Так же существует еще один прием с массивами

Теперь перейдем к строкам. В некоторых языках скриптинга есть отдельный тип для этого, string или строковый, в павн это

реализовано немного по другому. Для начало, что такое строки или строковый тип данных (которого в павн нет), это переменные

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

буквы/знака или цифры как символа (смысла в этом нет, если это просто переменная), а вот если у нас массив, то каждому

элементу массива можно задать определенный символ и при выводе всего массива вместе, то получится текст. Все предельно

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

И в конце этой "главы" рассмотрим присвоение значений массивам при обьявлении (каждому элементу)

С тегами все абсолютно тоже самое, только с тегами

Enum'ы

А теперь заключительная часть урока, енумы. Енумы на самом деле очень полезная вещь, она позволяет определить структуру

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

данных, например логический чередуется с целочисленным и завершается все это строкой которая нам совершенно не нужна до

этого. Но как же это реализовать? Мы будем использовать енумы.

Ну вот и весь урок.

Урок написан REALman'ом. Версия 2.0, отредактировано 18.06.2011.

📎📎📎📎📎📎📎📎📎📎