• <bdo id='HOymU'></bdo><ul id='HOymU'></ul>
  • <small id='HOymU'></small><noframes id='HOymU'>

    <i id='HOymU'><tr id='HOymU'><dt id='HOymU'><q id='HOymU'><span id='HOymU'><b id='HOymU'><form id='HOymU'><ins id='HOymU'></ins><ul id='HOymU'></ul><sub id='HOymU'></sub></form><legend id='HOymU'></legend><bdo id='HOymU'><pre id='HOymU'><center id='HOymU'></center></pre></bdo></b><th id='HOymU'></th></span></q></dt></tr></i><div id='HOymU'><tfoot id='HOymU'></tfoot><dl id='HOymU'><fieldset id='HOymU'></fieldset></dl></div>
    <legend id='HOymU'><style id='HOymU'><dir id='HOymU'><q id='HOymU'></q></dir></style></legend>
      1. <tfoot id='HOymU'></tfoot>

        如何暂时禁用 C/C++ 中的宏扩展?

        时间:2023-10-06

        • <legend id='LL9sf'><style id='LL9sf'><dir id='LL9sf'><q id='LL9sf'></q></dir></style></legend>

          1. <tfoot id='LL9sf'></tfoot>
              <bdo id='LL9sf'></bdo><ul id='LL9sf'></ul>

                  <tbody id='LL9sf'></tbody>
                  <i id='LL9sf'><tr id='LL9sf'><dt id='LL9sf'><q id='LL9sf'><span id='LL9sf'><b id='LL9sf'><form id='LL9sf'><ins id='LL9sf'></ins><ul id='LL9sf'></ul><sub id='LL9sf'></sub></form><legend id='LL9sf'></legend><bdo id='LL9sf'><pre id='LL9sf'><center id='LL9sf'></center></pre></bdo></b><th id='LL9sf'></th></span></q></dt></tr></i><div id='LL9sf'><tfoot id='LL9sf'></tfoot><dl id='LL9sf'><fieldset id='LL9sf'></fieldset></dl></div>

                  <small id='LL9sf'></small><noframes id='LL9sf'>

                  本文介绍了如何暂时禁用 C/C++ 中的宏扩展?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  出于某种原因,我需要暂时禁用头文件中的一些宏,#undef MACRONAME 将使代码编译,但它会取消现有宏的定义.

                  For some reason I need to temporarily disable some macros in a header file and the #undef MACRONAME will make the code compile but it will undef the existing macro.

                  有没有办法禁用它?

                  我应该提到您并不真正了解宏的值,而且我正在寻找交叉编译器解决方案(至少应该在 GCC 和 MSVC 中工作).

                  I should mention that you do not really know the values of the macros and that I'm looking for a cross compiler solution (should work at least in GCC and MSVC).

                  推荐答案

                  在 MSVC 中,您可以使用 push_macro pragma, GCC 支持它与 Microsoft Windows 编译器的兼容性.

                  In MSVC you could use push_macro pragma, GCC supports it for compatibility with Microsoft Windows compilers.

                  #pragma push_macro("MACRONAME")
                  #undef MACRONAME
                  
                  // some actions
                  
                  #pragma pop_macro("MACRONAME")
                  

                  这篇关于如何暂时禁用 C/C++ 中的宏扩展?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:Windows 下的确定性构建 下一篇:与类型“LPCWSTR"的参数不兼容;

                  相关文章

                  最新文章

                  1. <tfoot id='OwkxB'></tfoot>

                    <small id='OwkxB'></small><noframes id='OwkxB'>

                    <i id='OwkxB'><tr id='OwkxB'><dt id='OwkxB'><q id='OwkxB'><span id='OwkxB'><b id='OwkxB'><form id='OwkxB'><ins id='OwkxB'></ins><ul id='OwkxB'></ul><sub id='OwkxB'></sub></form><legend id='OwkxB'></legend><bdo id='OwkxB'><pre id='OwkxB'><center id='OwkxB'></center></pre></bdo></b><th id='OwkxB'></th></span></q></dt></tr></i><div id='OwkxB'><tfoot id='OwkxB'></tfoot><dl id='OwkxB'><fieldset id='OwkxB'></fieldset></dl></div>

                      • <bdo id='OwkxB'></bdo><ul id='OwkxB'></ul>
                      <legend id='OwkxB'><style id='OwkxB'><dir id='OwkxB'><q id='OwkxB'></q></dir></style></legend>