"#ifdef -DEBUG"这里的"-DEBUG"是什么意思?

问题描述:

"#ifdef _DEBUG"这里的"_DEBUG"是什么意思?
#ifdef _DEBUG
hins=::LoadLibrary("Debug\\iodevui.dll");
#else
hins=::LoadLibrary("Release\\iodevui.dll");
#endif
1个回答 分类:综合 2014-09-29

问题解答:

我来补答
#ifdef _DEBUG
#else
#endif
这是C++中的预处理器.
#ifdef _DEBUG的意思是如果预定义了名字_DEBUG,则函数执行该语句里的代码
即hins=::LoadLibrary("Debug\\iodevui.dll");并且抛弃下面的代码
否则抛弃上面的代码而执行#else里的,即 hins=::LoadLibrary("Release\\iodevui.dll");
#endif表示该预处理结束.
这样的代码一般都是在开发中用到,这样做的目的是:在开发程序时,能够根据是否定义了_DEBUG来选择执行其中的一段代码而忽略其它的.通常都是应用在软件升级中,如果用户花的钱多,他就能够获得指定的代码,花的钱少或者免费获得的就是另一部分代码,这些我也是听说.不过这段代码的作用就是这样
 
 
展开全文阅读
剩余:2000
上一页:牛刀小试4
下一页:第二问不会作