Обични и набројани типови података за Делпхи

Делфи програмски језик је пример снажно куцаног језика. То значи да све варијабле морају бити неке врсте. Тип је у основи назив за врсту података. Када декларишемо променљиву, морамо одредити њен тип, који одређује скуп вредности које променљива може да држи и операције које се на њој могу изводити.

Многи од уграђених типова података компаније Делпхи, као што су Интегер или Низ, могу се дорадити или комбиновати за креирање нових типова података. У овом ћемо чланку видјети како креирати прилагођене редовне типове података у Делпхи.

Ординал Типови

Дефинирајуће карактеристике редоследних типова података су: морају се састојати од коначног броја елемената и морају бити наређене на неки начин.

Најчешћи примери уобичајених типова података су све врсте Интегер, као и Цхар и Боолеан тип. Тачније, Објецт Пасцал има 12 унапред дефинисаних редних типова: Интегер, Схортинт, Смаллинт, Лонгинт, Бите, Ворд, Цардинал, Боолеан, БитеБоол, ВордБоол, ЛонгБоол и Цхар. Постоје и две друге класе кориснички дефинисаних редних типова: набројани типови и типови потповрста.

instagram viewer

У било којем редном типу, мора имати смисла да се кренете уназад или напред према следећем елементу. На пример, стварни типови нису редовни јер кретање уназад или напред нема смисла. Питање "Шта је следеће после 2,5?" бесмислено је.

Пошто, по дефиницији, свака вредност осим прве има јединственог претходника и свака вредност осим последње има јединственог наследника, неколико унапред дефинисаних функције користе се при раду са редним типовима:

Функција Ефекат
Наручи (Кс) Даје индекс елемента
Пред (Кс) Прелази на елемент наведен пре Кс у типу
Суцц (Кс) Иде на елемент наведен након Кс у типу
Дец (Кс; н) Помиче н елементе назад (ако је изостављен н помиче се 1 елемент назад)
Инц (Кс; н) Помиче н елемената напријед (ако је изостављен н, помиче се 1 елемент напријед)
Ниска (Кс) Враћа најнижу вредност у распону редног података типа Кс
Висока (Кс) Враћа највећу вредност у распону редног података типа Кс


На пример, Хигх (бајт) враћа 255 јер је највећа вредност типа Бите 255, а Суцц (2) враћа 3 јер је 3 наследник 2.

Напомена: Ако покушамо да користимо Суцц када последњи елемент Делпхи генерише а изузетак током извођења ако је провјера домета укључена.

Делпхи Набројени тип

Најлакши начин да се створи нови пример ординалног типа је једноставно навести гомилу елемената неким редоследом. Вриједности немају својствено значење, а њихова уредност слиједи редослијед у којем су идентификатори наведени. Другим речима, набрајање је листа вредности.

тип ТВеекДаис = (понедељак, уторак, среда, четвртак, петак, субота, недеља);

Једном када дефинирамо набројани тип података, можемо прогласити варијабле тог типа:

вар СомеДаи: ТВеекДаис;

Примарна сврха набројаног типа података је да разјасни које ваше податке програм ће манипулисати. Набројани тип је заиста само скраћени начин додјељивања секвенцијалних вриједности константама. С обзиром на ове декларације, уторак је стална врста ТВеекДаис.

Делпхи нам омогућава да радимо са елементима у набројеном типу користећи индекс који долази из редоследа у којем су наведени. У претходном примеру, понедељак у ТВеекДаис декларација типа има индекс 0, уторак има индекс 1, и тако даље. Функције наведене у табели пре него што, на пример, користимо Суцц (петак) за "одлазак у" суботу.

Сада можемо да испробамо нешто попут:

за Неки дан: = понедељак до Недеља урадитиако Неки дан = уторак онда
СховМессаге ('уторак је!');

Библиотека визуелних компоненти Делпхи користи набројане типове на многим местима. На пример, положај обрасца је дефинисан на следећи начин:

ТПоситион = (поДесигнед, поДефаулт, поДефаултПосОнли, поДефаултСизеОнли, поСцреенЦентер);

Ми користимо Положај (преко Објецт Инспецтор-а) ​​да добијемо или подесимо величину и постављање форма.

Врсте подврста

Једноставно речено, субранге тип представља подскуп вриједности у другом редном типу. Опћенито, можемо дефинирати било који подпоглавље почевши с било којим редним типом (укључујући претходно дефинирани набројени тип) и користећи двоструку тачку:

тип ТВоркДаис = понедељак.. Петак;

Овде ТВоркДаис укључује вредности понедељак, уторак, среда, четвртак и петак.

То је све - сада набројите!

instagram story viewer