|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
||||||
Альтернатива или замена "#define"03.05.2025, 18:18. Показов 11312. Ответов 35
У некоторых начинающих в с++ в интернете возникают вопросы как заменить #define чтобы не писать тонну define строк в программе.
Это очень просто, замены не существует на самом деле. Нужно просто добавить отдельную подпрограмму только для ресурсов, туда можно вписать любые мешающие алгоритмы как define, любые. Обязательно подключить библиотеку подпрограммы например как у меня include "define.cpp". Таким образом вы создаёте свою личную библиотеку на которую ссылаетесь в основной программе, с любыми define и вообще любыми не удобными для вас алгоритмами. Если вы новичок таким образом это как один из вариантов очень легко программировать любые сокращения массы алгоритмов. Пример:
0
|
||||||
| 03.05.2025, 18:18 | |
|
Ответы с готовыми решениями:
35
Есть ли замена функциям как, например, define?
Как #define MB_OK присвоить клик ЛКМ или движение курсора? |
|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
|
| 03.05.2025, 20:06 [ТС] | |
|
Если писать всё по 1000 раз каждый алгоритм в каждом месте без ссылок почти, оптимизация видеоигры будет лучше или хуже?
0
|
|
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
||
| 03.05.2025, 20:26 | ||
|
1
|
||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
||
| 03.05.2025, 20:38 | ||
|
1
|
||
|
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
|
|||
| 04.05.2025, 00:39 | |||
|
Человек ещё не знает, в какую черную дыру он может попасть с этими
#define ![]() Добавлено через 1 минуту Добавлено через 2 минуты
1
|
|||
|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
|
| 04.05.2025, 09:30 [ТС] | |
|
Спасибо. Попробую использовать typedef и inline. Только не пойму как другую команду в них засунуть с изменяемыми переменными, не уверен что они это вообще могут
0
|
|
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
||
| 04.05.2025, 10:10 | ||
|
И да, не хотие что ли основы С++ подтянуть, что бы глупые вопросы не задавать про "команды"..
1
|
||
|
фрилансер
6498 / 5729 / 1133
Регистрация: 11.10.2019
Сообщений: 15,300
|
|
| 04.05.2025, 10:21 | |
Сообщение было отмечено Bogradan как решение
Решение
Bogradan, вместо typedef нужно использовать using
а inline пока что явно не используй Добавлено через 4 минуты Azathtot, inline нужен не для встраивания, а для возможности множественного определения глобальных объектов и функций. Товарисчу ТС пока что это не нужно, больше бед наделает
1
|
|
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
|
| 04.05.2025, 10:25 | |
|
Алексей1153, согласен. Inline использовался для встраивания при царе горохе, сейчас оптимизация компилятора все четко делает.
1
|
|
|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
||||||
| 04.05.2025, 10:48 [ТС] | ||||||
|
Я вместо define научился делать тоже самое с typedef. Спасибо за то что объяснили как правильно. Наконец то я умею делать с классами что угодно и вертеть их как хочу. Define не буду использовать больше.
0
|
||||||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
|
| 04.05.2025, 10:50 | |
|
1
|
|
|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
||||||
| 04.05.2025, 10:59 [ТС] | ||||||
Какая разница если Pure C встроен в С++. Ну хорошо, попробовал using тоже работает. ![]()
0
|
||||||
|
Нарушитель
6318 / 3043 / 1054
Регистрация: 01.06.2021
Сообщений: 11,601
|
||
| 04.05.2025, 13:07 | ||
Сообщение было отмечено Bogradan как решение
Решениеusing может делать все то же самое, что typedef, а вот typedef не может делать все то же самое, что using. Особенно, что касается современного С++, STL и прочего, в частности шаблонов. В современном С++ предпочтительнее использовать using.
1
|
||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
||
| 04.05.2025, 13:39 | ||
|
Я понимаю сократить std::map<std::string,std::unorderd_set<s td::vector<MyType>>> до допустим map_of_typed_set_t но сокращать Texture до t это ССЗБ.
1
|
||
|
фрилансер
6498 / 5729 / 1133
Регистрация: 11.10.2019
Сообщений: 15,300
|
||||||
| 04.05.2025, 13:43 | ||||||
|
Bogradan,
1
|
||||||
|
1 / 1 / 0
Регистрация: 02.10.2021
Сообщений: 83
|
||
| 22.06.2025, 15:29 | ||
|
0
|
||
|
8 / 7 / 1
Регистрация: 22.03.2016
Сообщений: 343
|
|
| 13.07.2025, 00:45 [ТС] | |
|
Да, это очень плохо define использовать, не делайте так никогда, typedef и using использую хорошо.
0
|
|
| 13.07.2025, 00:45 | |
|
Внешний define или нечто подобное Ввод формул с Edit или альтернатива Кириллица в openGL (glut, freeglut) или (!) альтернатива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|