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

Вниз

вопрос про константы   Найти похожие ветки 

 
ououoy   (2007-07-14 15:47) [0]

если я пишу

const
 t = SizeOf(Integer);

а потом в коде много раз использую значение t.

Каковы действия компилятора: он прежде чем превратить в приложение вычисляет значение t и потом подставляет это значение во все указанные места? Или всё же это значение константы реализуется на уровне кода во время выполнения?


 
Zagaevskiy ©   (2007-07-14 15:49) [1]

Напиши т=4 и не парь мозги


 
Kolan ©   (2007-07-14 16:38) [2]

Константу он вычислит 1 раз. Тебе типа лень SizeOf(Integer); — и ты решил сделать констаноту? Не делай так. Везде пиши SizeOf(Integer);, так как увидев эту строчку в коде её поймут все, а увидев твоё t не поймёт никто&#133


 
Zagaevskiy ©   (2007-07-14 16:41) [3]


> Константу он вычислит 1 раз. Тебе типа лень SizeOf(Integer);
>  — и ты решил сделать констаноту? Не делай так. Везде пиши
> SizeOf(Integer);, так как увидев эту строчку в коде её поймут
> все, а увидев твоё t не поймёт никто…

Ты будешь его код смотреть?


 
Kolan ©   (2007-07-14 16:55) [4]

> Ты будешь его код смотреть?

Если ты пишешь код из расчёта что смотреть будешь ты — то можешь его сразу выбросить.

Код надо писать не для себя, а для того «другого» программиста, который будет его читать. Даже если на самом деле твой код никто никогда не увидит.

© — вольный перевод — Мартин Файлер


 
Anatoly Podgoretsky ©   (2007-07-14 16:56) [5]

> ououoy  (14.07.2007 15:47:00)  [0]

Он просто заменит везде t на выражение.
Но как тебе советуют ниже, так делать не стоит, запутываешь код и уж ни в каком случае не делать
t=4 вот это диверсия.


 
Anatoly Podgoretsky ©   (2007-07-14 16:57) [6]

> Zagaevskiy  (14.07.2007 16:41:03)  [3]

Хватит и того, что сам автор не поймет этого в будущем


 
Kolan ©   (2007-07-14 17:01) [7]

> Хватит и того, что сам автор не поймет этого в будущем

В том то и дело, что тот «другой» программист — это в 90% случаев ты и есть :)


 
Zagaevskiy ©   (2007-07-14 17:05) [8]

можно так тогда
const
 IntSize = SizeOf(Integer);
тогда всё понятно


 
Anatoly Podgoretsky ©   (2007-07-14 17:23) [9]

> Kolan  (14.07.2007 17:01:07)  [7]

Вот самого себя и надо особо любить


 
Германн ©   (2007-07-15 02:31) [10]


> Anatoly Podgoretsky ©   (14.07.07 16:57) [6]
>
> > Zagaevskiy  (14.07.2007 16:41:03)  [3]
>
> Хватит и того, что сам автор не поймет этого в будущем
>

О как мне это знакомо!
:)
Но не могу же я писАть комментарии к каждой строчке текста программы! :(



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

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

Наверх




Память: 0.49 MB
Время: 0.024 c
15-1184703140
Витян
2007-07-18 00:12
2007.08.12
Delphi 7 и Windows Vista


15-1184496499
Pgremse
2007-07-15 14:48
2007.08.12
Проблемы с запуском Turbo Delphi


4-1172297096
Чапаев
2007-02-24 09:04
2007.08.12
Защита


2-1184257976
Ivolg
2007-07-12 20:32
2007.08.12
Вопрос про MainMenu


11-1167652790
Vladimir Kladov
2007-01-01 14:59
2007.08.12
Версия 2.50