欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解C++11 原始字符串字面量(Json字符串表達(dá)更方便)

 更新時(shí)間:2025年03月19日 09:47:16   作者:我們的五年  
原始字符串字面量(Raw String Literal)是C++11引入的一種字符串表示方式,用于簡化字符串的定義,特別是當(dāng)字符串中包含大量特殊字符(如換行符、雙引號等)時(shí),這篇文章給大家介紹C++11原始字符串字面量(Json字符串表達(dá)更方便)的相關(guān)知識,感興趣的朋友一起看看吧

1.為什么要用原始字符串字面量?

因?yàn)槠胀ㄗ址绻刑囟ǖ淖址?nbsp;  "  字符    或者   \   字符),就要進(jìn)行轉(zhuǎn)移(\進(jìn)行轉(zhuǎn)義),不然就是特殊的含義。

這就造成了如果一個(gè)字符串有很多的這些字符,表達(dá)起來就不方便。有這個(gè)方面的需求,那么有沒有一種字符串把所有的字符都按字面意思處理呢?那么就有了原始字符串量。

2.原始字符串字面量:(輸入什么就是什么)

Kimi:

原始字符串字面量(Raw String Literal)是C++11引入的一種字符串表示方式,用于簡化字符串的定義,特別是當(dāng)字符串中包含大量特殊字符(如換行符、雙引號等)時(shí)。原始字符串字面量避免了對這些特殊字符進(jìn)行轉(zhuǎn)義的需要,從而使代碼更清晰、更易于維護(hù)

從上面來看,那么Json風(fēng)格的字符串就包含了很多的",這樣用原始字符串字母量就比較方便咯。

內(nèi)容里面是什么,就直接是什么,不會(huì)進(jìn)行特殊字符處理。

原始字符串字面量的基本格式:

R"(內(nèi)容)"

R"( 是原始字符串的開始標(biāo)記
內(nèi)容 是字符串的實(shí)際內(nèi)容,可以包含任意字符,包括換行符、雙引號等。
)" 是原始字符串的結(jié)束標(biāo)記。

但似乎也有BUG,如果內(nèi)容里面有)"那么就會(huì)當(dāng)成字符串的結(jié)束。

但是還提供了原始字符串字面量的變體。

原始字符串字面量變體:

有了這個(gè),可以自定義了,那么就實(shí)用多了??梢愿鶕?jù)自己的場景,即使內(nèi)容里面出現(xiàn))"也可以處理了。

R"delimiter(       開始標(biāo)志

內(nèi)容

)delimiter"     結(jié)束標(biāo)志

R"delimiter(內(nèi)容)delimiter"

對比這三個(gè)的區(qū)別:

#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
#include <string>
using namespace std;
int main()
{
	//普通正常字符串
	string a = "aaa\"\\";
	//原始字符串字面量
	string b = R"(aaa\"\\)";
	//原始字符串字面量變體,可以自己設(shè)計(jì)邊界
	//R"aaa(字符串開始,)aaa"字符串結(jié)束。
	string c = R"aaa("("(     )")")aaa";
	cout << a << endl;
	cout << b << endl;
	cout << c << endl;
	return 0;
}

適用場景:

JSON字符串

JSON字符串中也經(jīng)常需要使用雙引號,原始字符串可以簡化定義:

std::string jsonString = R"({"name": "Alice", "age": 30, "scores": [85, 90, 78]})";

HTML:

HTML代碼直接寫入字符串,不需要轉(zhuǎn)義或手動(dòng)添加換行符。

std::string html = R"(
<!DOCTYPE html>
<html>
<head>
    <title>Example</title>
</head>
<body>
    <h1>Hello, World!</h1>
</body>
</html>
)";

到此這篇關(guān)于C++11 原始字符串字面量(Json字符串表達(dá)更方便)的文章就介紹到這了,更多相關(guān)C++11 原始字符串字面量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C語言內(nèi)存泄漏常見情況及解決方案詳解

    C語言內(nèi)存泄漏常見情況及解決方案詳解

    這篇文章主要為大家介紹了C語言內(nèi)存泄漏常見情況及解決方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • C語言中static的使用介紹

    C語言中static的使用介紹

    大家好,本篇文章主要講的是C語言中static的使用介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • C語言創(chuàng)建windows窗口實(shí)例

    C語言創(chuàng)建windows窗口實(shí)例

    這篇文章主要介紹了C語言創(chuàng)建windows窗口實(shí)例,本文直接給出實(shí)現(xiàn)代碼,同時(shí)講解了編碼的步驟,需要的朋友可以參考下
    2015-04-04
  • 使用QGraphicsView實(shí)現(xiàn)氣泡聊天窗口+排雷功能

    使用QGraphicsView實(shí)現(xiàn)氣泡聊天窗口+排雷功能

    這篇文章主要介紹了使用QGraphicsView實(shí)現(xiàn)氣泡聊天窗口+排雷,重點(diǎn)給大家介紹使用QWebEngineView控件內(nèi)嵌html+CSS的實(shí)現(xiàn)方式,需要的朋友可以參考下
    2022-04-04
  • C語言實(shí)現(xiàn)生成新春福字的示例詳解

    C語言實(shí)現(xiàn)生成新春福字的示例詳解

    這篇文章主要介紹了如何利用C語言實(shí)現(xiàn)生成各個(gè)字體的新春福字,再也不用擔(dān)心支付寶掃福找不到圖片了,感興趣的同學(xué)可以跟隨小編學(xué)習(xí)一下
    2022-01-01
  • c++只保留float型的小數(shù)點(diǎn)后兩位問題

    c++只保留float型的小數(shù)點(diǎn)后兩位問題

    這篇文章主要介紹了c++只保留float型的小數(shù)點(diǎn)后兩位問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C++類成員函數(shù)中的名字查找問題

    C++類成員函數(shù)中的名字查找問題

    這篇文章主要介紹了C++類成員函數(shù)中的名字查找問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • C++ override關(guān)鍵字使用詳解

    C++ override關(guān)鍵字使用詳解

    這篇文章主要介紹了C++ override關(guān)鍵字使用詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • Qt音視頻開發(fā)之利用ffmpeg實(shí)現(xiàn)解碼本地?cái)z像頭

    Qt音視頻開發(fā)之利用ffmpeg實(shí)現(xiàn)解碼本地?cái)z像頭

    一開始用ffmpeg做的是視頻流的解析,后面增加了本地視頻文件的支持,到后面發(fā)現(xiàn)ffmpeg也是支持本地?cái)z像頭設(shè)備的,所以本文就來用ffmpeg實(shí)現(xiàn)解碼本地?cái)z像頭功能吧
    2023-03-03
  • C++ LeetCode1812判斷國際象棋棋盤格子顏色

    C++ LeetCode1812判斷國際象棋棋盤格子顏色

    這篇文章主要為大家介紹了C++ LeetCode1812判斷國際象棋棋盤格子顏色, 有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12

最新評論