2020-04-28

vak: (Default)
Еще одна новомодная фича Си++, которую я пропустил: сырые строки. Обычные строки начинаются с " и заканчиваются ", а внутри могут находиться хитрые последовательности типа \n или \u89ab. Начиная с C++11, появились сырые строки: они начинаются с R"( и заканчиваются )", и внутри вообще ничего не обрабатывается, а передаётся как есть.

Даже хитрее: между двойной кавычкой и скобкой можно вставлять произвольное слово от 0 до 16 символов, для прикола. Например:
#include <iostream>

int main()
{
    std::string msg = R"foobar(
// Twas bryllyg, and ye slythy toves \\
\\ Did gyre and gymble in ye wabe    //
    )foobar";

    std::cout << msg << std::endl;
    return 0;
}