極速下載站 —— 提供優(yōu)質(zhì)軟件下載服務(wù),感受全新的極速下載體驗(yàn)!

最近更新 | 軟件專題 | 軟件分類 | 軟件排行

您的位置:極速下載站資訊首頁軟件教程軟件資訊 → C/C++使用功能教程

C/C++使用功能教程

時間:2019-08-18 10:44:53  作者:johnnyl  瀏覽量:41

大家好,隨著人們對生活的質(zhì)量要求越來越高,電腦已經(jīng)成為人們生活和工作中的必需品,電腦是有很多軟件系統(tǒng)程序組成,如果想要學(xué)好電腦,我們必須對這些軟件系統(tǒng)程序有所了解,今天小編就帶領(lǐng)大家學(xué)習(xí)C# 的使用功能。歐洲五大聯(lián)賽即將開始!

如果你開始探索C#或決定擴(kuò)展你的知識,那么你應(yīng)該學(xué)習(xí)這些有用的語言功能,這樣做有助于簡化代碼,避免錯誤,節(jié)省大量的時間。歐洲五大聯(lián)賽即將開始!

圖:C/C++使用教程

C/C++使用功能教程圖1

1)async / await歐洲五大聯(lián)賽即將開始!

使用async / await-pattern允許在執(zhí)行阻塞操作時解除UI /當(dāng)前線程的阻塞。async / await-pattern的工作原理是讓代碼繼續(xù)執(zhí)行,即使在某些東西阻塞了執(zhí)行(如Web請求)的情況下。歐洲五大聯(lián)賽即將開始!

閱讀更多有關(guān)async / await-pattern的信息,

2)對象/數(shù)組/集合初始化器

通過使用對象、數(shù)組和集合初始化器,可以輕松地創(chuàng)建類、數(shù)組和集合的實(shí)例:

//一些演示類publicclassEmployee{ publicstringName {get;set;} publicDateTime StartDate {get;set;}}//使用初始化器創(chuàng)建employeeEmployee emp =newEmployee {Name="John Smith",StartDate=DateTime.Now()};

上面的例子在單元測試中才真正有用,但在其他上下文中應(yīng)該避免,因?yàn)轭惖膶?shí)例應(yīng)該使用構(gòu)造函數(shù)創(chuàng)建。歐洲五大聯(lián)賽即將開始!

3)Lambdas,謂詞,delegates和閉包歐洲五大聯(lián)賽即將開始!

在許多情況下(例如使用Linq時),這些功能實(shí)際上是必需的,確保學(xué)習(xí)何時以及如何使用它們。

閱讀更多關(guān)于Lambdas,謂詞,delegates和閉包的信息,

4)??(空合并運(yùn)算符)

?– 運(yùn)算符返回左側(cè),只要它不為null;那樣的情況下返回右側(cè):

//可能為nullvarsomeValue = service.GetValue();vardefaultValue =23//如果someValue為null,結(jié)果將為23varresult = someValue ?defaultValue;

?– 運(yùn)算符可以鏈接:歐洲五大聯(lián)賽即將開始!

stringanybody = parm1 ?localDefault ?globalDefault;

并且它可以用于將可空類型轉(zhuǎn)換為不可空:

vartotalPurchased = PurchaseQuantities.Sum(kvp => kvp.Value ??0);

閱讀更多有關(guān)?– 運(yùn)算符的信息,

5)$“{x}”(字符串插值) ——C#6

這是C#6的一個新功能,可以讓你用高效和優(yōu)雅的方式組裝字符串:

//舊方法varsomeString = String.Format("Some data: {0},some more data: {1}",someVariable,someOtherVariable);//新方法varsomeString =$"Some data: {someVariable},some more data: {someOtherVariable}";

你可以把C#表達(dá)式放在花括號之間,這使得此字符串插值非常強(qiáng)大。

6)?.(Null條件運(yùn)算符) ——C#6

null條件運(yùn)算符的工作方式如下:

//Nullifcustomerorcustomer.profileorcustomer.profile.ageisnullvar currentAge = customer?.profile?.age;

沒有更多NullReferenceExceptions!

閱讀更多有關(guān)?.-運(yùn)算符的信息,

7)nameof Expression ——C#6

新出來的nameof-expression可能看起來不重要,但它真的有它的價值。當(dāng)使用自動重構(gòu)因子工具(如ReSharper)時,你有時需要通過名稱引用方法參數(shù):

publicvoidPrintUserName(UsercurrentUser){ //The refactoring tool might miss the textual reference to current user belowifwe're renaming it if(currentUser == null) _logger.Error("Argument currentUser is not provided"); //...}

你應(yīng)該這樣使用它…

public void PrintUserName(User currentUser){ //The refactoring tool will not miss this... if(currentUser ==null) _logger.Error($"Argument {nameof(currentUser)} is not provided"); //...}

閱讀更多有關(guān)nameof-expression的信息,

8)屬性初始化器 ——C#6

12下一頁>

相關(guān)資訊

相關(guān)軟件