以下の内容はhttps://rksoftware.hatenablog.com/entry/2025/07/31/190000より取得しました。


C# 14 の情報を振り返る その9 / C# 14 (.NET 10 世代の C# ) partial イベントとコンストラクター / partial-events-and-constructors

C# 14 (.NET 10 世代の C# ) の機能、partial イベントとコンストラクター / partial-events-and-constructors を見てみます。

■ これまでは

partial でイベント、コンストラクタの宣言と実装を分けられませんでした。

■ これからは

partial でイベント、コンストラクタの宣言と実装を分けられます

■ コードで例

partial class C
{
    ////
    // 宣言パート
    ////
    // イベントの宣言のみ
    partial event EventHandler Ev1;

    // コンストラクターの宣言のみ
    partial C(int i);
    partial C(int i1, int i2);

    // これは書けない
    // partial C(int i1,int i2) : base();
    // エラー
    // 'C.C(int, int)': only the implementing declaration of a partial constructor can have an initializer

    // Preview バージョンを指定していない場合のエラー
    // C# 13.0 では、修飾子 'partial' はこの項目に対して有効ではありません。'preview' 以上の言語バージョンをご使用ください。


    ////
    // 実装パート
    ////
    // イベントの実装
    EventHandler? eh;
    partial event EventHandler Ev1 { add => eh += value; remove => eh -= value; }

    // コンストラクタの実装。実装では this() や base() が書ける
    partial C(int i) : this() { }
    partial C(int i1,int i2) : base() { }

    // this() 用のコンストラクタ
    C() { }
}

■ 今回のコード

GitHub に上げています。

github.com

■ 備えよう

新機能、いいですね。リリースに備えましょう。




以上の内容はhttps://rksoftware.hatenablog.com/entry/2025/07/31/190000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14