Afortunadamente, con C++ 11 también existe el enfoque más agradable de usar literales de cadena sin formato.
printf("She said \"time flies like an arrow, but fruit flies like a banana\".");
se convierte en:
printf(R"(She said "time flies like an arrow, but fruit flies like a banana".)");
Con respecto a la adición de paréntesis después de la cita de apertura, y antes de la cotización de cierre, tenga en cuenta que pueden ser casi cualquier combinación de hasta 16 caracteres, ayudando a evitar la situación donde la combinación está presente en la cadena misma. Específicamente:
cualquier miembro del carácter fuente básica establece excepto: espacio, la izquierda paréntesis (, el paréntesis a la derecha), la barra invertida \, y los caracteres de control que representan pestaña horizontal, pestaña vertical, forma feed y nueva línea"(N3936 §2.14.5 [lex.string] gramática) y "como máximo 16 caracteres "(§2.14.5/2)
¿Qué más claro que hace que esta frase trivial podría ser discutible , pero cuando se utiliza en cadenas formateadas como HTML o JSON, es indudablemente mucho más claro.