Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Вниз

const в delphi / define в C   Найти похожие ветки 

 
ledelphi   (2006-10-15 21:53) [0]

Господа, вот например в C компиляторах с препроцессором, #define, является неким подобием константы, и препроцессор перед компиляцией заменяет все эти define, на соответствующие константы.
(хотя это вы и сами знаете наверное)

Хоть в delphi и нет подобного C препроцессора, но интересно в delphi константы работают таким же образом?


 
@!!ex ©   (2006-10-15 21:55) [1]


> Хоть в delphi и нет подобного C препроцессора

Есть.


> но интересно в delphi константы работают таким же образом?

Насколько мне известно, не совсем так.
Просто попробуй описать в константе строку используй ее в куче мест.
В коде будет только одна такая строка.
Вывод:
Дельфи не подставляет константы.
В коде С будет тоже самое, кстати.
Правда там и строк то нет, в паскалевом понимании.


 
Anatoly Podgoretsky ©   (2006-10-15 22:01) [2]

Если ты про константы, то примерно одинаков, будет как минимум литеральная подстановка.
А макро процессора действительно нет, поскольку он требует многопроходной компиляции.


 
Ketmar ©   (2006-10-15 22:20) [3]

ни разу не так. %-) хотя отличия на первый взгляд и незаметны. нет в дельфи макропроцессора a-la C (IFDEF не считаем %-). и это правильно.


 
guav ©   (2006-10-15 22:35) [4]

В Delphi различают True constants и Typed constants.
Typed constants соответствуют константам заданным через const в С.
Перечисляемых типов и вещественные True constants подставляются значением.
Для строковых True constants действуют более сложные правила.
Прямого аналога #define в Delphi нет.


 
@!!ex ©   (2006-10-16 10:09) [5]


> Anatoly Podgoretsky ©   (15.10.06 22:01) [2]


> Ketmar ©   (15.10.06 22:20) [3]


> guav ©   (15.10.06 22:35) [4]

А я наивно полагал, что 2006 это уже поддерживает...
Неужели я ошибаюсь? :))


 
Ketmar ©   (2006-10-16 18:20) [6]

>[5] @!!ex(c) 16-Oct-2006, 10:09
>А я наивно полагал, что 2006 это уже поддерживает...
не знаю. я не читал "вацнью". да и пишу на D7. %-)



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

Форум: "Начинающим";
Текущий архив: 2006.10.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.043 c
4-1150363747
jiny
2006-06-15 13:29
2006.10.29
Как запустить EXE находящийся в виде потока TMemorySTream


2-1160810610
Alex_86
2006-10-14 11:23
2006.10.29
Событие при разворачивании свернутого окна


15-1160293068
DelphiLamer
2006-10-08 11:37
2006.10.29
Пара вопросов


15-1158055308
VitV
2006-09-12 14:01
2006.10.29
Стоит ли передодить на С#?


15-1159938282
TUser
2006-10-04 09:04
2006.10.29
У кого есть файл





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский