命名空间
变体
操作

注释

来自 cppreference.com
< cpp
 
 
C++ 语言
 
 

注释充当一种代码内文档。当插入到程序中时,它们实际上会被编译器忽略;它们仅供阅读源代码的人类作为笔记使用。虽然特定文档不是 C++ 标准的一部分,但存在一些实用程序可以解析具有不同文档格式的注释。

内容

[编辑] 语法

/* 注释 */ (1)
// 注释 (2)
1) 通常称为“C 风格”或“多行”注释。
2) 通常称为“C++ 风格”或“单行”注释。

所有注释在 翻译阶段 3 中从程序中移除,方法是将每个注释替换为单个空格字符。

[编辑] C 风格

C 风格注释通常用于注释大块文本,但也可以用于注释单行。要插入 C 风格注释,只需用 /**/ 将文本括起来;这将导致编译器忽略注释的内容。虽然不是 C++ 标准的一部分,但 /***/ 通常用于指示文档块;这是合法的,因为第二个星号被简单地视为注释的一部分。C 风格注释不能嵌套。

[编辑] C++ 风格

C++ 风格注释通常用于注释单行,但可以将多个 C++ 风格注释放在一起以形成多行注释。C++ 风格注释告诉编译器忽略 // 和换行符之间所有内容。

[编辑] 注意

由于注释在预处理阶段之前 被删除,因此不能使用宏来形成注释,并且未终止的 C 风格注释不会从 #include 的文件中溢出。

除了注释掉之外,用于源代码排除的其他机制是

#if 0
    std::cout << "this will not be executed or even compiled\n";
#endif

if (false)
{
    std::cout << "this will not be executed\n";
}

[编辑] 示例

#include <iostream>
 
/* C-style comments can contain
multiple lines */
/* or just one */
 
/**************
 *  you can insert any *, but
 *  you can't make comments nested
 */
 
// C++-style comments can comment one line
 
// or, they can
// be strung together
 
int main()
{
    // comments are removed before preprocessing,
    // so ABC is "1", not "1//2134", and "1 hello world"
    // will be printed
#define ABC 1//2134
    std::cout << ABC << " hello world\n";
 
    // The below code won't be run
    // return 1;
 
    // The below code will be run
    return 0;
}

输出

1 hello world

[编辑] 参见

C 文档 for 注释