我需要在C++中执行以下C#代码(如果可能的话).我必须使用很多引人注目的引号和其他内容来构造一个长字符串.
const String _literal = @"I can use "quotes" inside here";
Run Code Online (Sandbox Code Playgroud)
R S*_*hko 35
这在C++ 03(当前标准)中不可用.
这是C++ 0x草案标准的一部分,但目前尚不可用.
现在,您只需要明确引用它:
const std::string _literal = "I have to escape my quotes in \"C++03\"";
Run Code Online (Sandbox Code Playgroud)
一旦C++ 0x成为现实,你就可以写:
const std::string _literal = R"(but "C++0x" has raw string literals)";
Run Code Online (Sandbox Code Playgroud)
当你需要)"在你的文字中:
const std::string _literal = R"DELIM(more "(raw string)" fun)DELIM";
Run Code Online (Sandbox Code Playgroud)
在C++中没有C#的"@".实现它的唯一方法是正确地转义字符串:
const char *_literal = "I can use \"quotes\" inside here";
Run Code Online (Sandbox Code Playgroud)
C++中没有原始字符串文字.你需要转义你的字符串文字.
std::string str = "I can use \"quotes\" inside here";
Run Code Online (Sandbox Code Playgroud)
C++ 0x在可用时提供原始字符串文字:
R"C:\mypath"
Run Code Online (Sandbox Code Playgroud)
顺便说一下,你不应该用前导下划线命名任何东西,因为这样的标识符在C++中保留.
| 归档时间: |
|
| 查看次数: |
3919 次 |
| 最近记录: |