共用方式為


C# 程式的一般結構

C# 程式包含一或多個檔案。 每個檔案都包含零個或多個命名空間。 命名空間包含類別、結構、介面、列舉和委派或其他命名空間等類型。 下列範例是 C# 程式的基本架構,其中包含所有這些元素。

using System;

Console.WriteLine("Hello world!");

namespace YourNamespace
{
    class YourClass
    {
    }

    struct YourStruct
    {
    }

    interface IYourInterface
    {
    }

    delegate int YourDelegate();

    enum YourEnum
    {
    }

    namespace YourNestedNamespace
    {
        struct YourStruct
        {
        }
    }
}

上述範例會針對程序的進入點使用 最上層語句。 只有一個檔案可以有最上層語句。 程序的進入點是該檔案中的第一行程式文字。 在這種情況下,它是 Console.WriteLine("Hello world!");。 您也可以建立名為 Main 的靜態方法作為程序的進入點,如下列範例所示:

// A skeleton of a C# program
using System;
namespace YourNamespace
{
    class YourClass
    {
    }

    struct YourStruct
    {
    }

    interface IYourInterface
    {
    }

    delegate int YourDelegate();

    enum YourEnum
    {
    }

    namespace YourNestedNamespace
    {
        struct YourStruct
        {
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello world!");
        }
    }
}

在此情況下,程式會從 Main 方法的第一行開始,這是 Console.WriteLine("Hello world!");

表達式和語句

C# 程式是使用 表示式語句所建置。 表達式會產生值,而 語句會執行動作:

表達式是評估為單一值的值、變數、運算符和方法呼叫的組合。 表達式會產生結果,而且可在預期值的位置使用。 下列範例是表示式:

  • 42 (字面值)
  • x + y (算術運算)
  • Math.Max(a, b) (方法呼叫)
  • condition ? trueValue : falseValue (條件表示式)
  • new Person("John") (物件建立)

語句是執行動作的完整指令。 語句不會傳回值;相反地,它們會控制程式流程、宣告變數或執行作業。 下列範例是句子:

  • int x = 42; (宣告聲明)
  • Console.WriteLine("Hello"); (運算式語句 - 包裹方法呼叫運算式)
  • if (condition) { /* code */ } (條件語句)
  • return result; (return 語句)

主要區別是:表達式會評估為值,而語句則執行動作。 某些建構,例如方法呼叫,可以是兩者。 例如,Math.Max(a, b)int result = Math.Max(a, b); 中使用時是表達式,但當單獨寫成 Math.Max(a, b); 時會變成表達式語句。

如需查看有關敘述的詳細資訊,請參閱敘述。 如需表達式主體成員和其他表達式功能的相關信息,請參閱 表達式主體成員

您會在基本概念指南的 類型 一節中了解這些程式元素:

C# 語言規格

如需詳細資訊,請參閱 C# 語言規格 的基本概念。 語言規格是 C# 語法和使用方式的最終來源。