找回密码
 立即注册

QQ登录

只需一步,快速开始

开启左侧

C++11这些令人无比愉悦的改变(4) -- Raw字符串

[复制链接]
admin 发表于 2013-12-24 09:58:32 | 显示全部楼层 |阅读模式
原汁原味、未经加工谓之Raw。
拍照的朋友,可能喜欢将照片保存成Raw格式,未经加工,就容易处理。字符串也一样。

旧的表示法
char *s = "\\w\\\\\\w";
这里代表几个反斜杠的字符串? 仔细看,应该是 \w\\\w,
苦B的程序员啊,眼睛都看瞎了。

C++11引入了Raw字符串,就大不一样,只要用R"()"包起来,这样写:
char *s = R"(\w\\\w)";
意思一样,但是清楚多了!

然后,有一个小问题,上面的写法,Raw字符串以 )" 作为结束标志,
那么如果 -- Raw字符串有 )" 怎么办?
标准早就为我们考虑到了,加上分割符即可。

R"***("abcdefghijklmn(")")***"
它代表的字符串为"abcdefghijklmn(")" ,字符串内容包括其中的引号、括号。

(转载请注明来自:nuvoton-m0.com)
牛卧堂
回复

使用道具 举报

myl593799546 发表于 2014-1-16 13:35:09 | 显示全部楼层
c++真的和C差别有点大啊
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

新唐MCU