Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.18;
Скачать: CL | DM;

Вниз

data types and reserved words   Найти похожие ветки 

 
maxnovikov ©   (2002-04-08 11:45) [0]

Здравствуйте!
У меня два вопроса по основам Object Pascal.

1. Объясните пожалуйста, почему типы integer или double
в Object Pascal не являются ключевыми словами (reserved words)
языка, хотя string является таковым?

2. Этот код компилируется(!) и работает:

procedure f;
var
integer : string;
begin
integer := "abc";
end;

В Object Pascal уществует понятие базовых типов или что-то в
этом роде?

Спасибо.


 
MBo ©   (2002-04-08 12:47) [1]

именно потому, что их можно переопределить


 
maxnovikov ©   (2002-04-08 14:33) [2]

А где об этом сказано? Видимо я плохо смотрел Delphi Help?


 
Виктор Щербаков ©   (2002-04-08 14:42) [3]

В комментариях модуля System вот что сказано по этому поводу:
{ Predefined constants, types, procedures, }
{ and functions (such as True, Integer, or }
{ Writeln) do not have actual declarations.}
{ Instead they are built into the compiler }
{ and are treated as if they were declared }
{ at the beginning of the System unit. }


 
Anatoly Podgoretsky ©   (2002-04-08 15:00) [4]

В Object Pascal есть понятие базовые типы - это fundamental types и есть понятие обычных (родовых) типов generic types

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

Только один тип является частью языка - это стринг из за его специфической реализации, но я бы его не назвал типов, это ближе к понятию array или set



Страницы: 1 вся ветка

Текущий архив: 2002.04.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
3-57654
Orlangur
2002-03-29 02:38
2002.04.18
Нюансы транзакций


7-57909
Lizard
2002-01-20 15:08
2002.04.18
Какой модуль необходимо подключить чтобы сработала ShellExecute(0, nil,Pchar( explorer.exe ),nil,nil,1) ?


1-57704
lely
2002-04-04 08:34
2002.04.18
степень числа


14-57851
Sasha9
2002-03-07 12:30
2002.04.18
Мой первый комп


14-57845
Tpv
2002-03-06 23:12
2002.04.18
Зависание программы.