唯一标头文件代码:是否有效

时间:2013-02-11 03:58:06

标签: c++ syntax header

我遇到过其他人编写的C ++头文件,它有一些我以前从未见过的编码约定。以下代码在头文件中是否有效,如果是,那么这种技术被称为什么?为什么要使用它?

#if 0
    int test()
        return values = 0
                      = 1

#endif

请注意,如果没有半冒号,没有大括号,并且未在头文件中的任何位置定义该值。

3 个答案:

答案 0 :(得分:3)

它被称为注释代码 #if 0注释掉所有代码,直到遇到#endif

也许有人从一些伪代码开始,然后将其留待将来使用。

好读:
#IF ... #ENDIF Preprocessor Directive

答案 1 :(得分:1)

此代码永远不会被执行。 #if 0说,当0为真时,将以下代码块放在最终文件中。由于0始终为false,因此有效地注释掉了此代码。

int main(){
    #if 0
    lfaksjdf;lakjf;alskdjfa;lsdjf
    #endif
    return 0;
}

完全合法。

答案 2 :(得分:0)

#if 0
    anything you want
#endif

'#if 0'是一种注释掉代码的方法。它告诉预处理器不要在#if和#endif之间包含任何内容。

所以这只是一些伪代码,无需有效。