Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЯВУ.docx
Скачиваний:
2
Добавлен:
23.04.2019
Размер:
210.36 Кб
Скачать

9.Типы данных Object Pascal. Классификация типов ObjectPascal. Приведение типов.

Тип перемен опред при ее описании и не м б измен. Переменная может участвовать только в операциях, определенных ее типом. Базовыми в сис-ме типов явл-ся прост типы. Состав типы строятся из простых. Ссылоч типы образуются из любых др типов. Состав и ссылоч типы можно считать некоторыми правилами для построения более слож типовиз более прост. Огранич типы формируются из прост типов путем сужения их облдоп знач. Первичными в иерархии типов явл-ся стандартскаляр типы, представляющие традиционные в языках программирования множества знач (целые, вещ-ные, символ, булевские) и их модификац, учитывающ архитектур особенности аппаратуры.

Процедурные типы расширяют традицион понятие подпрог, позволяя обращаться с подпрограм как с переменными.

Несколько особняком стоят объекты. Являясьобобщением комбинированных типов(записей), они позволяют радикально изменить подход к разработке прог, предлагая объектно-ориентир стиль прог-ния.

I. Простые типы: порядковые, вещественные, дата-время.

Порядковый тип делится на:1. целые типы;2. логич или булевский тип;3. символьный; 4. перечисляемые;5. ограниченные или тип-диапазон.

1. Целые типы(множество целых чисел в различных диапазонах. 5целых типов, различающихся допустимым диапазоном знач и размером занимаемой памяти. Целые типы обозначаются идентификаторами Integer, Byte, ShortInt, Word, LongInt)

2. Булевский (логический) тип (2знач булевского типа, представляющие логич истин знач (истина/ложьtrue (истина) false (ложь).

3. Символ тип (Значениями символ типа являются символы из множества ASCII. Это множество из 256символов.Допускаются отклонения от стандарта Порядковые номера (кодировку) знач символ типа можно узнать из соотв разделов технич описаний.

4. Перечислимые типы (можно определить новый тип путем явного перечисления всех возможных его значений, причем каждое такое значение будет определяться только именем. Примерыперечислимыхтипов: (Red, Yellow, Green) (On, Off)(Left, Up, Right, Down)

5. Ограниченные типы (тип-диапазон)(Самым простым способом образования новых типов из уже существующих явл-ся ограничение (сужение) допустимого диапазона значстандартного скаляр типа. Это ограничопред-ся заданием мин и макс знач диапазона.

Синтаксис: мин_ знач..мак_знач1..10.

6. Вещ типы(множества вещественных значений в различных диапазонах Real, Single, Double, Extended и Comp)

7. Дата/время(опред-ся стандартным идентификатором TDateTime и предназначен для одноврем хранения и даты, и времени. Дата опред как кол-во суток, прошедших с 30 декабря 1899 года, а время - как часть суток, прошедших с 0 часов, так что)

II. Состав типы: структурированные типы, указатели, строки, процедурные, объекты, классы, варианты.Струк типы:1. регуляр(массивы); 2. комбинир (записи); 3. множествен;4. Файловые.

Прост типыопред различные множества неразделимых знач. Составные, или струк типызадают множества «сложных» значений; каждое знач из такого множества образует некоторый агрегат (совокупность) нескольких значдр типа. состав типы определяют способ образования новых типов из уже имеющихся, причем отдел элементы составных знач могут иметь любой, в том числе составной, тип.

1. Регуляр типы (массивы)(Каждое значрегуляр типа состоит из фиксированного числа эл одного и того же базового типа. Доступ к отдел элементам массивов организуется посредством указания имени массива и порядкового номера (индекса) необходимого элемента.Число элементов в массиве всегда д б фиксировано. 2. Для задания кол-ва элементов массива используется тип; число элементов определяется количеством возможных значений указанного типа3. В качестве элементов массива могут выступать значения любого типа; в частности, ими могут быть значения любых составных типов Такую перемен можно трактовать двояко: как массив, состоящий из нескольких массивов, либо как один двумерный массив (матрицу).

2. Комбинированные типы (записи)могут объединять значения различных типов и поэтому являются наиб гибким механ построен данных. Запись из фиксир числа компонентов- поля записи. 1. В пределах одной записи имена полей должны быть уникальны. 2. Имена полей могут совпадать с др идентификаторами в пределах текущ блока, а также с именами полей в др записях.

3. Множествен типы(значможет содержать любое кол-во различ эл базового типа - от ноля элементов до всех возможных значений базового типа. возможными знач перемен множ типа явл-ся все подмножества знач базового типа.Всезнач баз типа, образующие конкретзначмножест типа, д б различ.2. Порядок “расположения” элне имеет знач.

4. Файловые типы(у него есть имя, он содержит компоненты одного типа. длина вновь создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.

5. Указатели это пере, ктр в качзнач содержит адрес байта памяти. связывается с некот типом данных. Такие указатели типизирован.

6. Строковые типы

7. Процедурные типы( дать программисту гибкие ср-ва передачи фун и про в кач-вефактич пар-овобращ к дрпроц и функ.тип-процедура и тип-функция.

8. Объекты

9. Классы(спец типы, ктр содержат поля, методы и св-ва. В основе классов лежат три фундаментальных принципа инкапсуляция, наследование и полиморфизм.

10. Вариантыэто тип variant, разработспец для тех случаев, когда на этапе компиляции программист не может сказать, какого типа данные будут использоваться в выражении или как параметры вызова подпрограмм. В переменную-вариант можно поместить:· целое или вещ число; · лог знач; строку; время и/или дату; OLE-объект; массив произвольной размерности и длины, содержащ эл-ты одного из перечисленных выше типов.