如何转义//注释中的反斜杠
How to escape backslash in // comment
我有一个以反斜杠结尾的注释。就像
...
// use
..
Clang(++)警告我,这是多行注释
warning: multi-line // comment [-Wcomment]
// use
^
所以我试着在末尾添加一些空白,但没有帮助。我能转义反斜杠吗?
问题的基础是连行的定义。
当一行以backslash-newline
组合或<backslash><whitespace><newline>
组合结尾时,编译器将下一行文本追加到当前行文本之后。这可以用宏来演示:
#define ME {
cout << "men"
}
以上内容将被视为单行:
#define ME {cout << "men"}
编译器抱怨,因为你的"//"注释延伸到下一行,因为''的延续字符。
解决方案:
在""后面加上其他字符。
例子:
''
ending character
虽然这不是一个技术解决方案,但我认为这是一个提示,可以写一个更好的注释:
// use (backslash) instead of the normal slash here, because ...
你可以使用Grave Accent (')
#include<iostream>
using namespace std;
int main()
{
// print ``
cout << "DONE" << endl;
return 0;
}
也许你有这样的代码:
#define foo {int x = 123;
cout << x << endl;
}
你想把它注释掉:
//#define foo {int x = 123;
//cout << x << endl;
//}
上面的代码应该可以正常工作。另一方面,如果你写:
#define foo {int x = 123;
cout << x << endl;
}
那么foo可能会工作(如果下一行是空的),但如果你注释掉它,你会遇到麻烦。只需删除最后一个反斜杠。否则不要以反斜杠结束行,除非它是用来连接…
相关文章:
- 如何用转义符替换字符串中的所有特殊字符
- Visual Studio 2019:插入多个C++风格的单行注释
- 如何在C++中将 Python 字符串转换为其转义版本?
- 如何在C++中用'\'替换''来处理转义序列?
- VSCode 中带有 C/C++ 扩展名的多行注释缩进错误
- 如果我注释掉换行符,为什么'string'会成为一个不合格的变量
- 如何解释C++字符串中的 \u 转义码?
- PostgresSQL - SQL Ready 语句与字符串转义,防止 SQL 注入攻击
- 为什么 ## aka 令牌粘贴运算符不适用于 C 和 C++ 中的注释?
- 在 // C++注释中使用 \\ 是否合法?(C++评论中的LaTeX方程)
- 有没有办法获取用户操作系统的ANSI转义码?
- 注释一行使代码工作,而没有它,代码不起作用
- 使用 Doxygen 在不同文件中注释函数
- 如何设置叮当格式的注释编译指示,以免触及多行doxygen注释?
- Qt - 带有注释的 JSON
- 是否可以在原始字符串文本中插入转义序列?
- Visual Studio Community 代码分析的质量与 SAL 注释
- 如何阻止 ReSharper 在 C++ 中格式化多行注释
- C++,在多行代码段中注释
- 如何转义//注释中的反斜杠