Пользовательские типы данных

Что делать, чтобы стать программистом Что делать, чтобы стать программистом

Многие сегодня хотят стать программистами. Хотят. Но ничего не делают для этого. Не делают даже простых вещей. Не хотят даже прочитать книжку из 10 страниц. В итоге так и остаются никем. Потому что мечты не сбываются никогда. Сбываются только планы… Подробнее...

Наиболее внимательные из вас уже заметили, что программист может создавать свои собственные типы данных. Делается это с помощью ключевого (зарезервированного) слова type. Синтаксис:

type ИмяТипа = НовыйТип;

Здесь ИмяТипа - это идентификатор вашего типа данных. Этот идентификатор не должен совпадать с идентификаторами предопределённых типов и с зарезервированными словами. НовыйТип - это либо предопределённый тип Free Pascal, либо ваш собственный тип данных. Например, перечисление или интервал.

Зачем всё это надо? Разве не хватает стандартных (предопределённых) типов данных? Когда я только начинал изучать программирование, я тоже задавал этот вопрос. Но в последствии, когда мои программы становились всё сложнее, я понял, что разработчики языков программирования вовсе не дураки)))

Вы это тоже поймёте - всему своё время.

А пока ещё раз попробуем создать свои типы данных.

Листинг 13.7. Пользовательские типы данных.
program mytypes;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this };

type TMyInteger = Integer;
type TMyChar = 'a'..'z';
type TMyCars = (VAZ, GAZ, UAZ, MAZ, KAMAZ, BMW, MERSEDES, AUDI);


begin
  Writeln('Integer     : ', Low(Integer), '..', High(Integer));
  Writeln('TMyInteger  : ', Low(TMyInteger), '..', High(TMyInteger));
  Writeln('TMyChar     : ', Low(TMyChar), '..', High(TMyChar));
  Writeln('TMyCars     : ', Low(TMyCars), '..', High(TMyCars));

  Readln;
end.
Домашнее задание:

Создайте свои типы данных (включите воображение). Напишите программу, которая выводит минимальное и максимальное значение диапазона ваших типов данных.


Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su

Яндекс.Метрика