91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在C#9中使用頂級程序 top-level

發布時間:2021-07-12 13:40:40 來源:億速云 閱讀:205 作者:chen 欄目:編程語言

這篇文章主要講解了“怎么在C#9中使用頂級程序 top-level”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么在C#9中使用頂級程序 top-level”吧!

當我們用 C# 進行編碼的時候,總需要寫很多的模板代碼,即使是最簡單的 console 程序,想象一下,如果去測試一個 類庫 或者 API 的功能,通常你會用 Console 程序去實現,在開始工作的時候會發現你受到了 C# 標準模板的限制,業務邏輯必須要寫在 Main 里,如下代碼所示:


    class Program
    {
        static void Main(string[] args)
        {
            //todo
        }
    }

 

頂級程序 是 C#9 中引入的一個新概念,允許你直接寫自己的業務邏輯而不必受到模板代碼的限制,頂級程序 是一個非常????????的特性,可以讓代碼更加的干凈,簡短和可讀,你可以通過頂級程序去探索新的 idea,這篇文章將會討論如何在 C#9 中使用頂級程序。

 

頂級程序

在 C# 9.0 之前,下面的寫法在 Console 程序中已經是最小化的了。


using System;
namespace IDG_Top_Level_Programs_Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

 

在 C# 9.0 時代,可以祭出 頂級程序 來消除那些煩人的模板代碼,讓代碼的邏輯意圖更明顯,改造后的代碼如下:


using System;
Console.WriteLine("Hello World!");

 
怎么在C#9中使用頂級程序 top-level  
 

頂級程序中的方法

你也可以在頂級程序中使用方法,如下例子所示:


System.Console.WriteLine(DisplayMessage("Joydip!"));
System.Console.Read();
static string DisplayMessage(string name)
{
    return "Hello, " + name;
}

 

程序跑起來后,控制臺將會輸出:Hello, Joydip!

怎么在C#9中使用頂級程序 top-level  
 

頂級程序中的類

你也可以在頂級程序中使用類,結構體,枚舉,下面的代碼展示了如何使用。


System.Console.WriteLine(new Author().DisplayMessage("Joydip!"));
System.Console.Read();
public class Author
{
    public string DisplayMessage(string name)
    {
        return "Hello, " + name;
    }
}

   

頂級程序的原理分析

現在我們來分析一下,頂級程序的底層邏輯到底是怎么樣的,它本質上是一種語法糖,一種編譯器的特性,也就是說你沒有寫模板代碼的時候,編譯器會幫你生成,替你負重前行,參考下面的代碼段。


using System;
Console.WriteLine("Hello World!");

 

然后用在線工具 SharpLab https://sharplab.io/  看一下編譯器替你補齊的代碼。


using System;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Security;
using System.Security.Permissions;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("0.0.0.0")]
[module: UnverifiableCode]
[CompilerGenerated]
internal static class <Program>$
{
    private static void <Main>$(string[] args)
    {
        Console.WriteLine("Hello World!");
    }
}

 

總的來說,頂級程序 非常適合那些想 快速試錯,驗證想法 的場景,有一點要特別注意,應用程序中只能僅有一個文件使用 頂級程序,如果存在多個,編譯器會拋出錯誤的,還有一點,如果你是 C# 新手,你可能不理解頂級程序的底層邏輯,更好的方式就是老老實實的使用原生模板代碼,當你主宰了 Main 后,你將會理解 頂級程序 是多么的短小精悍!

譯文鏈接:https://www.infoworld.com/article/3612196/how-to-use-top-level-programs-in-csharp-9.html

感謝各位的閱讀,以上就是“怎么在C#9中使用頂級程序 top-level”的內容了,經過本文的學習后,相信大家對怎么在C#9中使用頂級程序 top-level這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太原市| 政和县| 桓台县| 锡林浩特市| 隆安县| 新宁县| 巩义市| 辽阳县| 武山县| 红原县| 达拉特旗| 和平区| 巫山县| 海伦市| 大关县| 石狮市| 安岳县| 黄石市| 石景山区| 平湖市| 罗源县| 儋州市| 临夏市| 青海省| 科尔| 丹凤县| 黄陵县| 桃园市| 香格里拉县| 宣武区| 诸暨市| 东宁县| 青冈县| 乌鲁木齐市| 花莲县| 南部县| 都匀市| 宝山区| 古交市| 天柱县| 阿拉善右旗|