¿Cómo escribir una constante de cadena multilínea (literal) en C++?
¡Hola a todos! Soy un desarrollador principiante de C++ y tengo un problema con cadenas largas. Necesito almacenar en el código un bloque grande de texto (por ejemplo, una consulta SQL, JSON o simplemente un mensaje para imprimir). Escribir todo en una sola línea es incómodo: el código se vuelve ilegible y difícil de formatear.
Intenté dividir la cadena así:
```cpp
std::string query = "SELECT * FROM users\nWHERE age > 18\nORDER BY name;";
```
Pero el compilador da un error: "invalid string literal". Entendí que no se puede hacer así. Luego probé con concatenación:
```cpp
std::string query = "SELECT * FROM users" +
"WHERE age > 18" +
"ORDER BY name;";
```
Esto compiló, pero la cadena resultó sin espacios ni saltos de línea — se perdieron. Tuve que agregar '\n' manualmente, lo que también es incómodo.
He oído que en C++11 aparecieron los raw string literals, pero no entiendo cómo usarlos correctamente. ¿Pueden explicar qué formas hay para declarar una cadena multilínea que conserve el formato, y cuál se considera la mejor práctica?