c 6 0 新增功能

2022-09-03 19:33:13 字數 1062 閱讀 1497

//

設定唯讀的屬性

public

string firstname

public

string lastname

public person(string firstname, string

lastname)

public

string firstname = "";

//方法

public override string tostring() => $",";

//唯讀屬性

public string fullname => $",";

比如我們輸出乙個hello world的時候

console.writeline("

hello world

");

有了using static

我們可以

using

system;

using

static

system.console;

namespace

test

}}

貌似沒雞毛暖用,就是看起來清爽一丟丟

person p =null

;var r = p?.firstname;//

r=null

person p = null

;var r = p?.firstname ?? "

unspecified

";

當p為null的時候返回後邊字串,不為空的時候返回firstname

使用$作為字串的開頭,並使用之間的表示式代替序號:

public

string getgradepointpercentage() =>$

"name: , . g.p.a:

";

C 6 0新增功能

c 6.0 版本包含許多可提高開發人員工作效率的功能。此版本中的功能包括 自動屬性初始值設定項 expression bodied 函式成員 using static null 條件運算子 字串內插 異常篩選器 nameof 表示式 catch 和 finally 塊中的 await 索引初始值設定...

C 6 0的語法《一》

一 自動初始化屬性 確實這個比之前的版本簡化了一下,不過你肯定很好奇,到底編譯器給我們做了哪些東西呢?從這張圖中可以看到,在ctor中k backingfield ctrip 的賦值在base ctor之前,這就說明name是變數初始化賦值,而不屬於 建構函式賦值,那有什麼區別呢,如果base ct...

C 6 0的語法《二》

一 字串嵌入值 1 class bird2 name 8 9 這個format有乙個不好的地方就是,如果佔位符太多,就特別容易搞錯,如果你少了乙個引數,就會報錯。因為容易報錯,所以為了保險起見就用字串拼接的方式來實現,但是我也知道字串拼接是耗時的一種操作,寫個stringbuilder又嫌麻煩,還好...