Форум: "Прочее";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];
Внизstring / String Найти похожие ветки
← →
test000 (2007-08-14 11:50) [0]Почему в delphi, написание большинства типов начинается с большой буквы (например Integer, Pointer, ...), а вот тип string пишется с маленькой буквы?
Я конечно понимаю, что написание индивидуально для каждого, но если посмотреть борландовские исходники, то там тоже везде string пишется с маленькой буквы.
И зачем именно его "подсвечивают" болдом?
← →
Ega23 © (2007-08-14 11:51) [1]А string это не совсем тип.
← →
Плохиш © (2007-08-14 11:56) [2]
> Почему в delphi, написание большинства типов начинается
> с большой буквы (например Integer, Pointer, ...), а вот
> тип string пишется с маленькой буквы?
В связи с тем, что среда делфи является регистронезависимой, вопрос теряет всякий смысл. Напоминает "Почему русские хавают вилками, а китайцы - палочками"...
← →
homm © (2007-08-14 12:13) [3]> И зачем именно его "подсвечивают" болдом?
А у меня не подсвечивает блдом, он у меня зеленый :P
← →
Однокамушкин (2007-08-14 12:17) [4]Потому что названия остальных типов это идентификаторы, смысл которых можно при желании и переопределить, а вот string это зарезервированное слово... Зарезервированные слова принято писать в нижнем регистре...
← →
Lacmus © (2007-08-14 12:21) [5]
procedure TForm36.Button1Click(Sender: TObject);
begin
if TypeInfo(string) <> nil then
ShowMessage("OK")
else
ShowMessage("Fail")
end;
← →
Mystic © (2007-08-14 12:30) [6]Ввиду того, что можно написать, например так:
var
S: string[21];
то тип string должен специально обрабатываться правилами синтаксического разбора, а значит для него должна быть выделена специальная лексема в лексическом анализаторе, а само слово "string" должно входить в список зарезервированных слов. По соглашениям от Borland, зарезервированные слова должны писаться в нижнем регистре.
← →
Котик Б (2007-08-14 12:41) [7]Предлагаю для отсутсвия путаницы ввести новый типы:
type
TInteger = type Integer;
TPointer = type Pointer;
... и т.д. и т.п. :)
← →
@!!ex © (2007-08-14 12:45) [8]> [7] Котик Б (14.08.07 12:41)
Путаницы нет.
базовые типы не содержат префикса, остальыне - содержат.
← →
DrPass © (2007-08-14 12:45) [9]
> Lacmus © (14.08.07 12:21) [5]
>
>
> procedure TForm36.Button1Click(Sender: TObject);
...А что делают предыдущие 35 форм этого замечательного проекта?
← →
Паша 1 (2007-08-14 12:46) [10]поглядел у себя. и integer и string пишу с маленькой буквы. как оказалось. и ничего не мешает. удивительное дело!
← →
DVM © (2007-08-14 12:54) [11]я integer с маленькой пишу тоже.
← →
Lacmus © (2007-08-14 12:54) [12]>DrPass © (14.08.07 12:45) [9]
Это особенность именования форм и модулей новых проектов для Delphi 2005-2007, если они расположены в одном каталоге.
← →
Игорь Шевченко © (2007-08-14 12:56) [13]DVM © (14.08.07 12:54) [11]
> я integer с маленькой пишу тоже.
а правильные пацаны пишут iNtEgEr
← →
TUser © (2007-08-14 13:02) [14]A вот Colorer выделяет слово integer, как и string.
← →
Паша 1 (2007-08-14 13:06) [15]
> Игорь Шевченко © (14.08.07 12:56) [13]
и как потом они это дело читают? я вот FieldByName задолбался писать с шифтом. три раза шифт давить нужно. но - пишу. дурацкая привычка...
← →
Игорь Шевченко © (2007-08-14 13:07) [16]
> и как потом они это дело читают?
Чукча не читатель
← →
Lacmus © (2007-08-14 13:12) [17]
type
on = Integer; // ошибки нет
on - зарезервированное слово.
← →
Однокамушкин (2007-08-14 14:58) [18]
> Lacmus © (14.08.07 13:12) [17]
> on - зарезервированное слово.
Ни разу не зарезервированное... откройте в справке список зарезервированных слов - нет там слова on, on - это директива...
> Directives are words that are sensitive in specific locations
> within source code. Directives have special meanings in
> the Delphi language, but, unlike reserved words, appear
> only in contexts where user-defined identifiers cannot occur.
> Hence--although it is inadvisable to do so--you can define
> an identifier that looks exactly like a directive.
Редактор кода не делает разницы между зарезервированными словами и директивами и подсвечивает их одинаково... Смысл тут такой - когда в язык вноятся изменения, нужно по максимуму сохранить совместимость с существующими исходниками, а новые зарезервированные слова могут совпадать с тем, как кто-то назвал переменную в своих исходниках, вот и стараются сделать поменьше зарезервированных слов... Специально придумали эти самые директивы - не совсем зарезервированные слова, но и не совсем идентификаторы, а так, нечто среднее... К директивам относятся также такие слова как message, stdcall, register и т.п. Кстати, в исходниках VCL параметры обработчиков сообщений часто называются Message, и эти имена подсвечиваются, как зарезервированные слова - меня это сильно раздражает...
← →
Lacmus © (2007-08-14 15:20) [19]>Однокамушкин (14.08.07 14:58) [18]
Вряд ли директивы:
The words at and on also have special meanings, and should be treated as reserved words.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2007.09.09;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.041 c