我从未使用过 #if、#ifdef、#ifndef、#else、#elif和#endif。
当我浏览一些源代码时,我发现了这些指令的广泛使用。对条件预处理器进行了一些阅读,但没有发现它们与普通条件语句有何不同的线索。所以我想知道下面的代码有什么好处:
#include<iostream>
int main()
{
int i = 0;
#if i == 0
std::cout<<"This";
#else
std::cout<<"That";
#endif
return 0;
}
对此:
#include<iostream>
int main()
{
int i = 0;
if (i == 0)
std::cout<<"This";
else
std::cout<<"That";
return 0;
}
另外,什么时候使用/不使用条件预处理器?