最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【C#】內(nèi)插字符串增強(qiáng) 騷操作原理講解

2022-10-25 14:03 作者:SunnieShine  | 我要投稿

內(nèi)插字符串的增強(qiáng)(Interpolated String Enhancements)

內(nèi)插字符串是 C# 6 就有的一個特性,但它最開始被直接翻譯成 string.Format 的方法調(diào)用,因此會造成裝箱影響性能。

C# 10 將其優(yōu)化,又因為考慮到兼容性的問題,所以沒有直接改變 C# 6 的這種編譯行為,而是單獨指定了一個新的行為:翻譯成類似 StringBuilder 的類似拼接的行為。

內(nèi)插字符串包含兩部分:內(nèi)插部分(Interpolation)和字面量部分(Literal)。內(nèi)插和字面量部分調(diào)用不同的方法。當(dāng)拼接字面量的時候,調(diào)用 AppendLiteral 方法;而拼接內(nèi)插部分的時候,則調(diào)用的是 AppendFormatted 方法。

另外,考慮到性能優(yōu)化的問題,編譯器會提前計算內(nèi)插字符串的總長度以及內(nèi)插部分的總個數(shù)。你可以使用你自定義的內(nèi)插字符串拼接器對象的構(gòu)造器來獲取這兩個數(shù)值,分別都是 int 類型。

只要我們定義出了這種數(shù)據(jù)類型,就可以在任何使用內(nèi)插字符串的地方轉(zhuǎn)譯成這樣的對象進(jìn)行拼接,避免編譯器的默認(rèn)行為,而且還能優(yōu)化性能。

一個比較方便入門的參考實現(xiàn)代碼:

圖1:調(diào)用部分

圖2:自定義內(nèi)插字符串拼接器對象部分


【C#】內(nèi)插字符串增強(qiáng) 騷操作原理講解的評論 (共 條)

分享到微博請遵守國家法律
綦江县| 布拖县| 将乐县| 肇东市| 德江县| 青岛市| 巧家县| 宜兴市| 济南市| 武宁县| 漯河市| 乌拉特中旗| 滦平县| 商城县| 盐山县| 成安县| 仪陇县| 锦州市| 沅陵县| 宁陕县| 绥阳县| 广东省| 宁波市| 临邑县| 海南省| 孝感市| 色达县| 通山县| 高邮市| 东港市| 新疆| 缙云县| 遵义县| 平昌县| 蓝田县| 徐汇区| 和林格尔县| 观塘区| 桑植县| 桂平市| 拜城县|