|
0 / 0 / 0
Регистрация: 31.10.2013
Сообщений: 9
|
|
непонятня смысловая нагрузка (#define _In_)01.11.2013, 14:03. Показов 3854. Ответов 37
Метки нет (Все метки)
#define _In_
SWITCH_DECLARE(const switch_state_handler_table_t *) switch_core_get_state_handler(_In_ int index); Не понятно зачем объявляется _In_ и какую смысловую нагрузку он несет во входном параметре (_In_ int index)
0
|
|
| 01.11.2013, 14:03 | |
|
Ответы с готовыми решениями:
37
смысловая задача Как реализовать директиву #define для создания шаблона отпределения #define ? Скрытие столбцов. Ошибка App-define od obj-define error |
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|
| 01.11.2013, 15:05 | |
|
Croessmah, castaway,
или вы думаете я этого не знаю? специально показал "тонкое место" второе нет анализа входных параметров в макросе запросто можно сложить например два адреса
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||
| 01.11.2013, 15:06 | ||
|
но мои компиляторы для микропроцессоров посылают меня с inline да и почему тогда на Си лучше писать макросами?
0
|
||
|
Неэпический
|
|||
| 01.11.2013, 15:10 | |||
|
Не по теме: Добавлено через 2 минуты Если не ошибаюсь, то в C99 уже был inline
0
|
|||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|||||||
| 01.11.2013, 15:13 | |||||||
|
поставь случайно в макросе точку с запятой, я часто их на "автомате" ставлю. компилятор даст ошибку в строке включения макроса а не в определении
0
|
|||||||
| 01.11.2013, 15:15 | |
|
2
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||
| 01.11.2013, 15:40 | ||
|
Собственно если вместо директив препроцессора можно использовать конструкции языка их и следует использовать.
0
|
||
|
979 / 196 / 33
Регистрация: 26.09.2012
Сообщений: 2,041
|
|
| 01.11.2013, 16:53 | |
|
Я от щас книгу почитываю http://www.ozon.ru/context/detail/id/18817437/ , и там говориться, дословно не помню, но вроде как есть люди которые против макросов, макросы не нужно использовать и всякая фигня, а вы откройте любой файл заголовочный и посмотрите сколько там макросов, как говориться время поставит всех на свои места и те кто так говорил типо проехали, макросы широко используются и лучше раз выучить тему и потом уже не делать ошибки. Типо макрос как бы сильный инструмент в принципе если с умом им пользоваться так оно и есть, хотя бы использовать в качестве DEBUG уже сила. Я от например уже 1.5 к строк написал и ввел переменную int debug и каждый раз ее проверял если true то выполняю определенный код, а щас поисправлял все на #define DEBUG #ifdef DEBUG #endif. Просто если в программе этих if(debug) там штук 5 то ничего, а если их сотни, то это значительно замедлит программу.
Добавлено через 3 минуты Автор короче пропагандирует макросы использовать, да я думаю не нужно цуратса их использовать.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
||
| 01.11.2013, 16:59 | ||
|
есть например когда без макроса никуда условная компиляция например ,одну из них ты привел а если код пишем мультиплатформенный и определенные действия нужны для линукс а другие для винды как тут без макросов? каждый раз код переписывать другое дело что макросы не нужны для констант и встраиваемых функциях
1
|
||
|
Ушел с форума
|
||
| 01.11.2013, 17:08 | ||
|
Макросы иногда помогают расширить язык. То есть, сделать такую вещь, которая чистым синтаксисом или нереализуема вообще, или приводит к нагромождениям лишних сущностей. Пример такого макроса - BOOST_SCOPE_EXIT и его аналоги. Удобная RAII-обертка для всего на свете, легко читается, вероятность накосячить минимальна. Без этой возможности пришлось бы на каждый охраняемый ресурс заводить свой отдельный класс, или выдумывать какой-нибудь хитроумный шаблон с параметризацией по способу удаления объекта...
0
|
||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|
| 01.11.2013, 18:38 | |
|
Evg,
дай ссылку где ты про макросы расписывал, пускай народ посмотрит на силу и красоту макросов
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,875
|
|
| 01.11.2013, 18:59 | |
|
0
|
|
| 01.11.2013, 19:04 | |
|
0
|
|
|
Ушел с форума
|
|
| 01.11.2013, 19:16 | |
|
Вот еще занятная статейка по теме:
C Preprocessor tricks, tips, and idioms https://github.com/pfultz2/Clo... and-idioms
0
|
|
| 01.11.2013, 19:26 | |
|
0
|
|
| 01.11.2013, 19:26 | |
|
Смысловая задача на геометрическую прогрессию define define #define c :: #define Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|