這個(gè)方法用的比較多的是在 out 參數(shù),如使用 int 的嘗試轉(zhuǎn)換函數(shù)
var str = "123"; if (int.TryParse(str, out var _)) { var n = _; }
編譯是不通過(guò)的,會(huì)出現(xiàn) error CS0103: The name '_' does not exist in the current context 上面的代碼還可以去掉 var 代碼
var str = "123"; if (int.TryParse(str, out _)) { //var n = _; }
在 ValueTuple 也是很多的使用
var db = ("林德熙", "逗比"); var (lindexi, _) = db;
上面代碼表示只拿出 lindexi 而 逗比是不拿出來(lái)的,雖然使用了下劃線,但是如果在下面要使用下劃線是無(wú)法編譯通過(guò)
從這個(gè)特性可以推出在辣么大的使用,請(qǐng)看代碼
Action<int> f = _ => { var n = 2; };
這樣寫(xiě)表示不理會(huì)第一個(gè)參數(shù),雖然這樣寫(xiě)和下面代碼是不等價(jià)的
Action<int> f = delegate { var n = 2; };
但是從約定上,使用下劃線表示忽略的代碼
總結(jié)
以上所述是小編給大家介紹的C# 7.0 使用下劃線忽略使用的變量的原因分析,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VEVB武林網(wǎng)網(wǎng)站的支持!
|
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注