原始字面常量(C++11)
文章目录
- 原始字面常量(C++11)
- 前言
- 一、原始字面量
- 二、代码示例
- 总结
前言
字面量一般是指数值(12、454等)和字符串(“Hw”、“h\t”),但是有时候我们想表达字符原始的意义,不想进行转义,比如说"h\t"字符串中‘\t’表达的意思是制表符即进行了转义,C++11添加了原始字符串常量,不需要额外对字符串做转义或者连接操作。
一、原始字面量
定义方式未:R"xxx(原始字符串)xxx",其中()两边的字符串可以省略,()两边的字符串主要起到描述原始字符串的作用,要保证()两边的字符串相同。
二、代码示例
#include <iostream>
using namespace std;
int main()
{
string str = "F:\work_study\test.txt";
std::cout << str << endl;
string str1 = "<html>\
<head>\
<title>";
std::cout << str1 << endl;
// 原始字面量
// 不转义
string str2 = R"xxx(F:\work_study\test.txt)xxx";
std::cout << str2 << endl;
//在C++11之前如果一个字符串分别写到了不同的行里边,需要加连接符,这种方式不仅繁琐,
//还破坏了表达式的原始含义,如果使用原始字面量就变得简单很多,很强直观,可读性强。
// 如果是很长的字符串,也可以不使用连接符
string str3 = R"xxx(<html>
<head>
<title>)xxx";
std::cout << str3 << endl;
return 0;
}
总结
本文主要介绍了C++11的原始字面量的使用,欢迎阅读交流。