Здравствуйте, rg45, Вы писали:
R>Ни о каких обработках на стадии компиляции речи нигде не идет.
Фишка в том, что #-конструкции являются директивами препроцессирования. И описанная конструкция работает исключительно в силу того, что в компилятор встроен костыль, обрабатывающий конкретно эту директиву на этапе раскрытия шаблона, а не на этапе препроцессирования. Я хотел это добавить, но забыл. И это, кстати, лишает программиста возможности вывести оттуда сообщение именно на этапе препроцессирования.
А __pragma добавлена не просто "для использования в макросах", а как раз для того, чтобы обрабатываться там, где макрос раскрывается, а не где он определяется.
Re[5]: Распечатать compile-time константу в выводе компилято
ЕМ>Фишка в том, что #-конструкции являются директивами препроцессирования.
Ну ты для меня прямо Луну открыл, и Солнце заодно.
ЕМ>А __pragma добавлена не просто "для использования в макросах", а как раз для того, чтобы обрабатываться там, где макрос раскрывается, а не где он определяется.
Да что ты говоришь? И как из этого можно сделать вывод об "обработке на стадии компиляции"?
А цитату в моем сообщении, в которой я жирным выделил "__pragma keyword enables you to code pragma directives" ты не заметил, конечно. Ну, это многое объясняет.
Здравствуйте, Евгений Музыченко, Вы писали:
R>>И как из этого можно сделать вывод об "обработке на стадии компиляции"?
ЕМ>Если немного подумать, то можно.
По-моему это возможно только при одном условии — если во время чтения вообще не включать мозги.
ЕМ>Если думать в основном о том, как ловчее уязвить оппонента — трудно, да.
А что еще можно делать с "оппонентом", который перманентно генерит какую-то бредятину?
--
Re[3]: Распечатать compile-time константу в выводе компилято
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Это очень кривой прием.
но вьіводит и без генерации ошибки. да джисях єто достигается используюется генерацией всяких ворнингов, анюзед к примеру.
В C/C++ многие простые и очевидные вещи приходится делать через задницу, ибо разработчики языка до таких мелочей не снисходят, они заняты высоким и утонченным.
похоже кому-то надо определяться, 1. с тем все ли только через генерацию ошибки, 2. и как оно относится друг к другу очень кривой прием и через задницу
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Здравствуйте, ботаныч, Вы писали:
Б>>похоже кому-то надо определяться
ЕМ>Так я-то давно определился, и объяснил, как это правильно делать в VC++.
в данном случае правильно, для практика имеет одно значение — передать условно STATIC_PRINT(std::true_type) и увидеть std::integral_constant<bool ... предложенній вариант позваляет єто сделть мгновенно в любом проекте любой его части за секундьі. Большего для диагностической части подобного масштаба лично мной не ожидается.
если Вьі определились, то замечатльно, можно бьіло поделиться, вот прямо replace линк вместо єто очень криво. дать ссьілку.
Re[6]: Распечатать compile-time константу в выводе компилятора
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Здравствуйте, ботаныч, Вы писали:
Б>>можно бьіло поделиться, вот прямо replace линк вместо єто очень криво. дать ссьілку.
ЕМ>Я вам дал объяснение. Одного объяснения, без ссылки, не осилите?
зачем?