|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.01.2010, 18:02 | #1 |
Новичок
Джуниор
Регистрация: 05.01.2010
Сообщений: 2
|
Почему функция, а не макрос define?
Увидел в Интернете заметку о директиве препроцессора define, где говорилось, что можно использовать define в качестве функции, т.е.:
#define Figyra (a) (a+a) Стоит ли ее использовать вместо функций? Или существует какой-то огромный минус при использовании define? Просто с ней бы было нагляднее, да и места код меньше бы занимал. |
07.01.2010, 18:27 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
это остается макросом.
просто заменит так Figyra(1)=1+1 HIWORD явный пример когда нужен макрос а не функция...банальная логическая операция быстрее чем вызов функции. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
07.01.2010, 18:28 | #3 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Ответ: Нет.
Вопрос: Для каких целей ? |
07.01.2010, 18:33 | #4 |
Новичок
Джуниор
Регистрация: 05.01.2010
Сообщений: 2
|
|
07.01.2010, 18:36 | #5 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
если ситуация подобная, то вперед. иначе бессмысленно(лишь код больше станет) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
07.01.2010, 20:08 | #6 |
Форумчанин
Регистрация: 13.12.2009
Сообщений: 272
|
Я так понимаю, если дефайн разрешил эту проблему, то функции просто работали с разными типами данных, так что можешь использовать шаблоны функций!
Если я помог вам - порадуйте меня, нажмите на весы слева
|
08.01.2010, 02:27 | #7 |
Форумчанин
Регистрация: 08.01.2010
Сообщений: 165
|
При работе с макросами возникают следующие проблемы:
Конечно, есть ситуации, в которых использовать макросы просто необходимо, но это совсем другая история. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Почему функция не возвращает никакое значение? | Тупой | Общие вопросы Delphi | 1 | 31.05.2009 17:31 |
Почему не работает функция? | rocky7 | Общие вопросы C/C++ | 2 | 17.02.2009 08:37 |
Почему не работает простейший макрос? | zander | Microsoft Office Excel | 5 | 05.02.2009 20:58 |
Почему макрос не определяет ячейку? | valerij | Microsoft Office Excel | 3 | 18.09.2008 00:17 |