C 7 1 中的新增功能

2021-09-11 11:23:58 字數 1642 閱讀 3892

2017/08/16

作者bill wagner olprod v-radelg exdevillee

c# 7.1 是 c# 語言的第乙個點版本(更新版本)。 它標誌著該語言發布節奏的加速。 理想情況下,可以在每個新功能準備就緒時更快推出新功能。 c# 7.1 增加了將編譯器配置為匹配特定語言版本的功能。 從而可以分別制定有關公升級語言版本的決策和有關公升級工具的決策。

c# 7.1 增加了語言版本選擇配置元素、三個新的語言功能和新的編譯器行為。

此版本中新增的語言功能包括:

async main 方法

應用程式的入口點可以含有 async 修飾符。

default 文字表示式

在可以推斷目標型別的情況下,可在預設值表示式中使用預設文字表示式。

推斷元組元素名稱

在許多情況下,可通過元組初始化來推斷元組元素的名稱。

最後,編譯器有 /refout 和 /refonly 兩個選項,可用於控制引用程式集生成。

若要使用單點版本中的最新功能,需要配置編譯器語言版本並選擇該版本。

非同步 main 方法

非同步 main 方法使你能夠在 main 方法中使用 await 關鍵字。 在過去,需要編寫:

c#複製

static int main()

現在,您可以編寫:

c#複製

static async task main()

如果程式不返回退出**,可以宣告返回 task 的 main 方法:

c#複製

static async task main()

你可以在程式設計指南的非同步 main 方法主題中閱讀更多詳細資訊。

預設文字表示式

預設文字表示式是針對預設值表示式的一項增強功能。 這些表示式將變數初始化為預設值。 過去會這麼編寫:

c#複製

funcwhereclause = default(func);

現在,可以省略掉初始化右側的型別:

c#複製

funcwhereclause = default;

你可以通過 c# 程式設計指南的預設值表示式 主題了解有關此增強功能的詳細資訊。

此增強功能也會更改某些default 關鍵字 的分析規則。

推斷元組元素名稱

此功能是對 c# 7.0 中引入的元組功能一次小型增強。 在初始化元組時,許多時候,賦值操作右側的變數名與用於元組元素的名稱相同:

c#複製

int count = 5;

string label = 「colors used in the map」;

var pair = (count: count, label: label);

元組元素的名稱可通過在 c# 7.1 中初始化元組時使用的變數進行推斷:

c#複製

int count = 5;

string label = 「colors used in the map」;

var pair = (count, label); // element names are 「count」 and 「label」

可以在元組主題中了解有關此功能的詳細資訊。

引用程式集生成

有兩個新的編譯器選項會生成「僅引用」程式集:/refout 和 /refonly。 鏈結的主題詳細介紹了這些選項和引用程式集。

C 7 1 新增功能

c 7.1 是 c 語言的第乙個點版本 更新版本 它標誌著該語言發布節奏的加速。理想情況下,可以在每個新功能準備就緒時更快推出新功能。c 7.1 增加了將編譯器配置為匹配特定語言版本的功能。從而可以分別制定有關公升級語言版本的決策和有關公升級工具的決策。c 7.1 增加了語言版本選擇配置元素 三個新...

C 7 1類的繼承與派生(PTA題目)

定義平面二維點類cpoint,有資料成員x座標,y座標,函式成員 建構函式複製建構函式 虛函式求面積getarea,虛函式求體積函式getvolume 輸出點資訊函式print。由cpoint類派生出圓類cirle類 新增資料成員半徑radius 函式成員 建構函式 複製建構函式 求面積getare...

C 9 0中的新增功能 譯

what s new in c 9.0 c 9.0中的新增功能 features and enhancements 特徵和增強特徵 records 記錄init only setters 僅限init的資源庫 top level statements 頂級語句 pattern matching en...