Reputation: 23517
string raw_str = R"(R"(foo)")";
If I have R"()"
inside a raw string, and that causes the parser to confuse. (ie., it thought the left most )"
was the end of the raw string.
How do I escape this?
Upvotes: 26
Views: 18755
Reputation: 3911
The format for the raw-string literals[2] is: R"delimiter( raw_characters )delimiter"
so you can use a different delimiter that is not in the string like:
string raw_str = R"~(R"(foo)")~";
Upvotes: 40
Reputation: 11012
The raw string will terminate after the first )"
it sees. You can change the delimiter to ***
for example:
string raw_str = R"***(R"(foo)")***";
Upvotes: 15