- •Средства визуального программирования
- •090105 «Комплексное обеспечение информационной безопасности
- •Ставрополь, 2010 Содержание
- •Введение
- •Задачи дисциплины – дать основы:
- •В результате изучения дисциплины студенты должны
- •1.1. Версия 1
- •1.2. Версия 2
- •1.3. Версия 3
- •1.4. Версия 4
- •1.5. Версия 5
- •1.6. Версия 6
- •2.1. Главное окно
- •2.2. Окно формы
- •2.3. Окно дерева объектов
- •2.4. Окно инспектора объектов
- •2.5. Окно кода программы
- •3.1. Пустая форма и ее модификация
- •3.2. Размещение нового компонента
- •3.3. Реакция на события
- •3.4. Некоторые итоги
- •4.1. Страница standard
- •4.2. Страница additional
- •4.3. Страница win32
- •4.4. Страница system
- •4.5. Страница dialogs
- •4.6. Страница win31
- •4.7. Страница samples
- •4.8. Компоненты для работы с базами данных
- •4.9. Компоненты для доступа к интернет
- •4.10. Доступ к серверам автоматизации
- •5.1. Учебная программа
- •5.2. Структура программ delphi
- •5.3. Типы
- •5.4. Операторы языка
- •5.5. Массивы
- •5.6. Процедуры и функции
- •6.1. Алфавит
- •6.2. Идентификаторы
- •6.3. Константы
- •6.4. Выражения
- •6.5. Операции
- •7.1. Простые типы
- •7.2. Структурированные типы
- •7.3. Строки
- •7.4. Указатели и динамическая память
- •7.5. Псевдонимы типов
- •8.1. Локализация имен
- •8.2. Описание подпрограммы
- •8.3. Параметры-массивы и параметры-строки
- •8.4. Процедурные типы
- •8.5. Рекурсия и опережающее описание
- •9.1. Основные понятия
- •9.2. Составляющие класса
- •9.3. Объявление класса
- •9.4. Интерфейсы
- •10.1. Основные свойства варианта
- •10.2. Преобразование вариантов к данным других типов
- •10.3. Подпрограммы для работы с вариантами
- •10.4. Вариантные массивы
- •10.5. Пользовательские варианты
- •11.1. Доступ к файлам
- •11.2. Процедуры и функции для работы с файлами
- •11.3. Текстовые файлы
- •11.4. Типизированные файлы
- •11.5. Нетипизированные файлы
- •11.6. Средства windows для работы с файлами
- •11.7. Отображение файлов в память
- •11.7.1. Создание/открытие файла
- •11.8. Объектная модель работы с файлами
- •12.1. Структура модулей
- •12.2. Заголовок модуля и связь модулей друг с другом
- •12.3. Интерфейсная часть
- •12.4. Исполняемая часть
- •12.5. Инициирующая и завершающая части
- •12.6. Доступ к объявленным в модуле объектам
- •12.7. Типы модулей в delphi
- •13.1. Назначение
- •13.2. Реализация
- •13.3. Пример
- •13.4. Использование
- •13.5. Включение в библиотеку форм
- •15.1. Константы простых типов и типа string
- •15.2. Константы-массивы
- •15.3. Константы-записи
- •15.4. Константы-множества
- •15.5. Константы-указатели
- •15.6. Инициация переменных
- •16.1. Класс exception - обработка исключений
- •16.2. Класс tlist - списки
- •16.3. Классы tstrings и tstringlist -наборы строк и объектов
- •16.4. Графический инструментарий
- •Список используемой литературы
6.2. Идентификаторы
Идентификаторы в Object Pascal - это имена констант, переменных, меток, типов, объектов, классов, свойств, процедур, функций, модулей, программ и полей в записях. Идентификаторы могут иметь произвольную длину.
Идентификатор всегда начинается буквой, за которой могут следовать буквы и цифры. Напомню, что буквой считается также символ подчеркивания, поэтому идентификатор может начинаться этим символом и даже состоять только из одного или нескольких символов подчеркивания. Пробелы и специальные символы алфавита не могут входить в идентификатор.
Примеры правильных идентификаторов:
a |
MyProgramIsBestProgram |
external |
ALPHA |
date_27_sep_39 |
_beta |
Примеры неправильных идентификаторов:
1 Program // начинается цифрой
block#l // содержит специальный символ
My Prog // содержит пробел
mod // зарезервированное слово
6.3. Константы
В качестве констант в Object Pascal могут использоваться целые, вещественные и шестнадцатеричные числа, логические константы, символы, строки символов, конструкторы множеств и признак непределенного указателя NIL.
Целые числа записываются со знаком или без него по обычным правилам и могут иметь значение в диапазоне от -263 до +263-11. Следует учесть, что, если целочисленная константа выходит за указанные границы, компилятор дает сообщение об ошибке. Такие константы должны записываться с десятичной точкой, т. е. определяться как вещественные числа.
Вещественные числа записываются со знаком или без него с использованием десятичной точки и/или экспоненциальной части.
Экспоненциальная часть начинается символом е или е, за которым могут следовать знаки “+” или “-” и десятичный порядок. Символ е (е) означает десятичный порядок и имеет смысл “умножить на 10 в степени”. Например,
3.14Е5 - 3,14 умножить на 10 в степени 5;
-17e-2 -минус 17 умножить на 10 в степени минус 2.
Если в записи вещественного числа присутствует десятичная точка, перед точкой и за ней должно быть хотя бы по одной цифре. Если используется символ экспоненциальной части е (в), за ним должна следовать хотя бы одна цифра десятичного порядка.[Только для версий 4...6. Для версии 1 диапазон от -32536 до +32535. Для версии 2 и 3 от -2147483648 до +4294967294]
Шестнадцатеричное число состоит из шестнадцатеричных цифр, которым предшествует знак доллара $ (код символа 36). Диапазон шестнадцатеричных чисел - от $ffffffffffffffff до
$7FFFFFFFFFFFFFFF (для версии 4...6).
Логическая константа - это либо слово false (ложь), либо слово true (истина).
Символьная константа - это любой символ ПК, заключенный в апострофы:
'z' - символ “z”;
'Ф' - символ “Ф”.
Если необходимо записать собственно символ апострофа, он удваивается:
'''' - символ “'” (апостроф).
Допускается использование записи символа путем указания его внутреннего кода, которому предшествует символ # (код 35), например:
#97 - символ “а”;
#90 - символ “Z”;
#39 - символ “'”;
#13 - символ “CR”.
Строковая константа - любая последовательность символов (кроме символа CR - возврат каретки), заключенная в апострофы. Если в строке нужно указать сам символ апострофа, он удваивается, например:
'Это - строка символов';
'That''s string'.
Строка символов может быть пустой, т. е. не иметь никаких символов в обрамляющих ее апострофах. Строку можно составлять из кодов нужных символов с предшествующими каждому коду символами #, например, строка #83#i2i#i09#98#ii#i08 эквивалентна строке ' Symbol '.
Наконец, в строке можно чередовать части, записанные в обрамляющих апострофах, с частями, записанными кодами. Таким способом можно вставлять в строки любые управляющие символы, в том числе и символ cr (код 13), например:
#7'Ошибка !'#13'Нажмите любую клавишу ...'#7 .
Конструктор множества - список элементов множества, обрамленный-квадратными скобками,например:
[1,2,4..7,12]
[blue, red]
[ ]
[true]
В Object Pascal разрешается в объявлении констант использовать произвольные выражения, операндами которых могут быть ранее объявленные нетипизированные константы, имена типов и объектов, а также следующие функции от них:
abs |
lo |
ptr |
swap |
chr |
odd |
round |
trunc |
hi |
ord |
sizeof |
|
length |
pred |
succ |
|
Например:
const
MaxReal = Maxint div SizeOf(real) ;
NumChars = ord('Z') - ord('a') + 1;
Ln10 = 2.302585092994;
Ln10R = 1 / Ln10;