C++ 如何评论几行,里面有评论
我有一个这样的程序C++ 如何评论几行,里面有评论,c++,c,comments,C++,C,Comments,我有一个这样的程序 int main(){ char c; int i; /* counter */ double d; return 0; } 如果我想注释掉char、int和double,只需将return注释为uncommented,我可以这样做吗?已经存在的注释将停止该注释。。 有没有一种简单/快速的方法来评论这一点 int main(){ /* char c; int i; // counter double d; *
int main(){
char c;
int i; /* counter */
double d;
return 0;
}
如果我想注释掉char、int和double,只需将return注释为uncommented,我可以这样做吗?已经存在的注释将停止该注释。。
有没有一种简单/快速的方法来评论这一点
int main(){
/*
char c;
int i; // counter
double d;
*/
return 0;
}
严格来说不是评论,但效果是你想要的,很容易恢复
这也可以很好地扩展到更大的代码块,特别是如果您有一个编辑器,可以匹配
\if..\endif
的开头和结尾,如果您的编译器支持注释的/
符号(在C中是非标准的,但非常普遍支持),在C99中,使用一个编辑器,可以用这些命令切换整个行块。
int main(){
// char c;
// int i; /* counter */
// double d;
return 0;
}
有许多编辑器/IDE支持使用热键进行注释/取消注释。这是一个非常有用的特性。 在Kate/KDevelop中,热键是Ctrl+D 这一点(以及支持此功能的其他IDE)也在讨论中进行了描述。我倾向于:
int main(){
#ifdef USE_DISABLED_CODE
char c;
int i; /* counter */
double d;
#endif
return 0;
}
使用一个简洁的名称,如“CODE_REMOVED_FOR_TESTING_Purpose”或“REMOVED_FROM_E3_BUILD”,不要对其进行定义,您已经为自己留下了一条简短的注释,说明为什么代码被禁用(如果您在所有文件中查找#ifdef),它将显示出来)。一般来说,我会在行尾使用
/
作为一行注释。因此,它将是//counter
,您可以轻松地将块包装在/*…*/
/
注释中,这些注释在标准C99编译器中可用:-)事实上,这取决于使用的是哪种风格的C;-)+1.“预处理器注释”(不同于/*…*/
)嵌套#IF FALSE也是一个选项,并且更明确……除了FALSE
不是标准预定义宏之一,并且在某些条件下(例如,-Wundef
在gcc
下生效)会导致一些编译器发出警告。聪明,但我希望人们只使用它来快速调试某些东西,然后撤销它。我不喜欢这样扫描代码。@Meryln:除非有人这样做#DEFINE FALSETRUE@Steve他的回答很聪明,但我发现这是最常见的,也是最不可能离开你的开发经理的问题:)我不想改变从/**////我写Linux内核的评论。@ KynasCon代码“>0”是非常普遍和广泛理解的,并且在C和C++中都有额外的好处。我会记下来的。我只是以前没见过它被使用:)@KennyCason,你通常不会在经过审查和发布的代码中看到它,因为留下孤立的代码块是不好的做法。但这是一种常见的编码技术,我最近(2010年)从大约30个文件中删除了#ifdef POST_JUNE_开发块。现在没有人知道讨论的是哪一年(可能是1994年左右,但可能比那一年更久;我们当时改变了CM系统,因此失去了更古老的历史),更不用说计划中的“6月后开发”将是什么了。您可能至少应该在一个地方记录define的含义。我在权衡各种方法时会用到它。我试着用一个短语来描述block的意思,而不是像POST\u JUNE\u DEVELOPMENT
那样含糊不清的东西。我知道几年后我会再次看到这段代码,想知道琼是谁,她担任什么职位,或者为什么她的离开会让事情发展起来
int main(){
#ifdef USE_DISABLED_CODE
char c;
int i; /* counter */
double d;
#endif
return 0;
}