Ошибки, баги, вопросы - страница 2864
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Так а почему не работает?
Скорее всего, нигде не работает такой подход. Т.к. идет такая замена, где VALUE справа не определен.
Скорее всего, нигде не работает такой подход. Т.к. идет такая замена, где VALUE справа не определен.
Да и зло это, чужую макроподстановку менять.
Без этого зла не получилось бы такое.
Да и зло это, чужую макроподстановку менять. Тем более, если это предопределенные макросы среды. Мало ли в каком месте, после сборки всех файлов проекта, переопределение макроса в конечном итоге окажется. Лучше уж свой макрос _VALUE определить.
Можно вопрос, почему нельзя использовать присвоение значения VALUE глобальной переменной и её умножать и подставлять в конечный дефайн?
Можно, но тогда смысл макроподстановки теряется (подставить значения в код). Вся надежда на компилятор останется, что он const type (ты, кстати, определился с типом переменной?) преобразует в с++ constexpr type
А так, да, можно
А так, да, можно
Не прокатит с таким.
Не прокатит с таким.
Скорее всего, нигде не работает такой подход. Т.к. идет такая замена, где VALUE справа не определен.
Видимо, совсем не понимаю, как работает компилятор. Представлял, что строки анализируются последовательно. Значит, нет неопределенного справа значения:
Видимо, совсем не понимаю, как работает компилятор. Представлял, что строки анализируются последовательно. Значит, нет неопределенного справа значения:
Работает сверху-вниз, как замена текста. Т.е. "TMP" будет заменен на "VALUE".
Видимо, совсем не понимаю, как работает компилятор. Представлял, что строки анализируются последовательно. Значит, нет неопределенного справа значения:
Это не компилятор - это препроцессор)
превращается в
, а VALUE у тебя не определен