注释是一种代码内文档。当被插入到程序中时,它们实际上会被编译器忽略;它们仅作为笔记被阅读源代码的人使用。虽然具体的文档并不是 C++ 标准的一部分,但存在一些工具可以使用不同的文档格式解析注释。
语法
/* 注释 */ | (1) | |
// 注释 | (2) | |
1) 通称为“ C 风格”或“多行”注释。
2) 通称为“ C++ 风格”或“单行”注释。
在翻译阶段 3中,通过把每段注释替换为单个空白字符,所有的注释都从程序中被移除。
C 风格
C 风格注释通常用于注释大块的文本;不过也可以用它们注释单行文本。要插入一个 C 风格注释,可以简单地以 /*
和 */
环绕文本;这样会使注释的内容被编译器忽略。尽管不是 C++ 标准的一部分, /**
和 */
常用于指示文档块;这是合法的,因为第二个星号简单地被当做注释的一部分。C风格注释不能被嵌套。
C++ 风格
C++ 风格注释通常用于注释单行文本;不过也可以把多个 C++ 风格注释放在一起来组成多行注释。 C++ 风格注释告诉编译器忽略 //
和换行符之间的所有内容。
注意
因为注释在预处理器阶段前已经被移除,所以宏不能用于组成注释,而且未终止的 C 风格注释不会从被 #include 的文件中漏出。
除了把代码注释掉之外,用于排除源代码的其他机制还有:
- #if 0
- std::cout << "这一句不会被执行(甚至不会被编译)\n";
- #endif
以及
- if(false) {
- std::cout << "这一句不会被执行\n";
- }
示例
运行此代码
- #include <iostream>
- /* C 风格注释
- 能含有多行 */
- /* 或仅一行 */
- /**************
- * 你能插入任何 * ,但
- * 你不能使注释嵌套
- */
- // C++ 风格注释能注释一行
- // 或者,能将
- // 它们串在一起
- int main()
- {
- // 注释在预处理前被移除,
- // 故 ABC 为 1 ,非 1//2134 ,而 "1 hello world"
- // 将得以打印
- #define ABC 1//2134
- std::cout << ABC << " hello world\n";
- // 将不运行下方代码
- // return 1;
- // 将运行下方代码
- return 0;
- }
输出:
- 1 hello world
当前内容版权归 cppreference 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 cppreference .