第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

規(guī)則字符串和逐字字符串之間有什么區(qū)別?

規(guī)則字符串和逐字字符串之間有什么區(qū)別?

C#
ibeautiful 2019-07-09 14:12:09
規(guī)則字符串和逐字字符串之間有什么區(qū)別?我有ReSharper的試用版,它總是建議我將常規(guī)字符串切換為逐字字符串。有什么關(guān)系?
查看完整描述

3 回答

?
www說

TA貢獻1775條經(jīng)驗 獲得超8個贊

這包括在C#規(guī)范第2.4.4.5節(jié):

2.4.4.5字符串文字

C#支持兩種形式的字符串文字:常規(guī)字符串文本和逐字字符串文本。

常規(guī)字符串文字由包含在雙引號(如“hello”)中的零個或多個字符組成,并且可以包括簡單轉(zhuǎn)義序列(例如\t表示制表符字符)以及十六進制和Unicode轉(zhuǎn)義序列。

逐字串文字由一個@字符、一個雙引號字符、零個或多個字符和一個結(jié)束雙引號字符組成。一個簡單的例子是“Hello”。在逐字字符串文字中,分隔符之間的字符是逐字解釋的,唯一的例外是引號-轉(zhuǎn)義序列。特別是,簡單轉(zhuǎn)義序列以及十六進制和Unicode轉(zhuǎn)義序列不使用逐字字符串文字處理。逐字串文字可能跨越多行。

換句話說,@“逐字字符串文字”中唯一的特殊字符是雙引號。如果您希望編寫包含雙引號的逐字字符串,則必須編寫兩個雙引號。所有其他字符都是按字面解釋的。

甚至可以在逐字字符串文本中有文字新行。在常規(guī)字符串文本中,不能有文字新行。相反,您必須使用例如"\n".

逐字字符串文本通常用于在源代碼中嵌入文件名和正則表達式,因為這些類型的字符串中的反斜杠很常見,如果使用正則字符串文字,則需要轉(zhuǎn)義。

從常規(guī)字符串文本創(chuàng)建的字符串與從逐字字符串文本創(chuàng)建的字符串在運行時沒有區(qū)別-它們都是類型。System.String.


查看完整回答
反對 回復(fù) 2019-07-09
?
拉風(fēng)的咖菲貓

TA貢獻1995條經(jīng)驗 獲得超2個贊

字符串和逐字字符串之間沒有運行時的區(qū)別。它們只是在編譯時才不同。編譯器在逐字字符串中接受較少的轉(zhuǎn)義序列,所以除了引號轉(zhuǎn)義之外,您看到的是什么?

還可以使用逐字字符@告訴編譯器將關(guān)鍵字視為名稱:

var @if = "if";//okay, treated as a nameConsole.WriteLine(@if);//compiler err, if without @ is a keywordConsole.WriteLine(if);var @a = "a";//okayConsole.WriteLine(@a);//also okay, @ isn't part of the nameConsole.WriteLine(a);


查看完整回答
反對 回復(fù) 2019-07-09
  • 3 回答
  • 0 關(guān)注
  • 1438 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號