编译你自己的调试代码

    xiaoxiao2021-03-25  115

    以vs2013为例,有时候为了编译一些调试代码,但并不希望这些代码在Release时被编译运行。其实C++提供了这样的机制,那就是条件编译。 我们可以这样做:

    如上图所示,在Realease模式下,编译器自动为我们编译了“NDEBUG”宏,这个宏在Release模式下是默认被define过的。好,根据这一点,我们就可以做手脚了,上代码:

    #ifndef NDEBUG int a = 1; int b = 2; #endif //NDEBUG

    其中的两句代码,在Debug下会编译,在Release下是不会被编译的。 效果如图: 如图,Release下代码的显示是虚的,证明其没有被编译。

    转载请注明原文地址: https://ju.6miu.com/read-19158.html

    最新回复(0)