C++11——原始字面量

原始字面量:在R “xxx(raw string)xxx” 中,原始字符串必须用括号()括起来,括号的前后可以加其他字符串,
所加的字符串会被忽略,但是必须加的是一模一样的前面abb 后面也得abb

    string a = "\yyy";
    string b = R"(\yyy)";
    string c = R"aaa(\yyy)aaa";
    //string d = R"aaa(\yyy)bbb"; //报错了   R"XXX(aaaa)XXX" 应该左右对称

这里 我们可以看到a字符串中\y = y

\不见了 如果你要\yyy  你就要赋值为\\yyy

但是当你使用原始字面量的时候!

你只要在用个R"XX()XX" 就可以直接把里面的直接输出! 特殊的字符也是!

比如!\n

    string g = R"(\n)";
    cout << g << endl;

输出结果

首先我们先了解下

C++字符串太长有两种方式分行写

1.使用""

2.使用\

    string e = "456"
                "deded"
                "45787"
                "45455"
                "45455";
    cout << e << endl;

    string f = "456\
deded";
    cout << f << endl;

输出结果

 

 

 但是!要是想行岂不是每个后面都要加\n  暴风哭泣

但是 当我们使用原始字面量的话!

    string d = R"(456
        deded
        45787
        45455
        45455)";
    cout << d << endl;

 

 

 简直不要太舒服

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章