|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.03.2010, 21:07 | #1 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Смысл констант
Думал написать в раздел дельфы, но это скорее философский вопрос.
Зачем собственно делать константы, если можно сделать переменные и еще в разделе описание приделать к ним значения? Код:
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
26.03.2010, 21:16 | #2 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Косвенная или прямая адресация
т.е. константа может "вставляться" компилятором при каждом объявлении в коде, таким образом формируется прямая адресация, иначе обращение происходит косвенным образом, т.к. указывается адрес (переменная) на данные. p.s. конечно может я ошибаюсь, но вроде такова идеология |
26.03.2010, 21:16 | #3 |
Software Engineer
Участник клуба
Регистрация: 07.04.2007
Сообщений: 1,618
|
Что-бы:
1. Вы, или тот, кто пользуется вашим кодом (библиотекой) по ошибке не изменил значение переменной 2. Не знаю как в делфи, но например в C++ константы имеют особые привилегии, которых не имеют переменные, например константу можно указать в качестве размерности массива, без использования динамической памяти. 3. Обычно компиляторы присваивают значения константам во-время компиляции, и программа не высчитывает значения, как у переменных, следовательно операции с константами работают быстрее (но это зависит от реализации компилятора)
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
|
26.03.2010, 21:21 | #4 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,596
|
Ну, константа защищена от случайного изменения.
Если константа целочисленная, то, на сколько я понимаю, под неё вообще не отводится дополнительной ячейки памяти, как под переменную. P.S. О, уже наотвечать успели E-Mail: arigato.freelance@gmail.com
|
26.03.2010, 21:33 | #5 |
C++ hater
СтарожилДжуниор
Регистрация: 19.07.2009
Сообщений: 3,333
|
Код:
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay
My other car is cdr. Q: Whats the object-oriented way to become wealthy? A: Inheritance |
26.03.2010, 22:06 | #6 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Так все таки использование констант дает увеличение скорости выполнения в дельфи или не дает?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
26.03.2010, 22:14 | #7 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,596
|
А оно Вам нужно это ускорение?
Использование констант даёт дополнительные удобства. Остальное второстепенно. E-Mail: arigato.freelance@gmail.com
|
26.03.2010, 22:15 | #8 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Ясно. Т.е. это скорее для того, чтобы быстро менять некоторые параметры (например уравнения) при отладке?
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
26.03.2010, 23:29 | #9 | |
Форумчянин
Форумчанин
Регистрация: 05.04.2009
Сообщений: 446
|
Цитата:
Nobody expects Spanish Inquisition!
|
|
26.03.2010, 23:34 | #10 | |
Заблокирован
Старожил
Регистрация: 20.07.2008
Сообщений: 4,032
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Видимость констант | tae1980 | Microsoft Office Excel | 5 | 23.11.2009 12:06 |
Задание размеров формы с помощью констант (C++) | Хохол | Общие вопросы .NET | 2 | 20.11.2009 13:19 |
считывание констант | artemavd | Общие вопросы Delphi | 18 | 15.10.2008 15:32 |
произвольный выбор из констант | Arhangel_bes | Помощь студентам | 11 | 12.10.2008 22:07 |
Замена констант в RichEdit. | Pashekka | Компоненты Delphi | 1 | 24.09.2007 09:42 |