有没有办法在 C++ 中使用多行纯文本、常量文字,就像 Perl 一样?也许使用 #include
文件的一些解析技巧?我想不出一个,但是男孩,那会很好。我知道它会在 C++0x 中。
原文由 rlbond 发布,翻译遵循 CC BY-SA 4.0 许可协议
你也可以这样做:
const char *longString = R""""(
This is
a very
long
string
)"""";
原文由 Raydelto Hernandez 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.5k 阅读
3 回答487 阅读✓ 已解决
嗯……有点。最简单的方法是使用编译器连接相邻字符串文字的事实:
缩进无关紧要,因为它不在引号内。
你也可以这样做,只要你小心避开嵌入的换行符。不这样做,就像我的第一个答案一样,将无法编译:
同样,请注意每行末尾的反斜杠,它们必须在行结束之前,它们正在转义源中的换行符,因此一切都好像换行符不存在一样。在有反斜杠的位置,字符串中不会出现换行符。使用这种形式,你显然不能缩进文本,因为缩进会成为字符串的一部分,用随机空格弄乱它。