partial class A
{
public partial int X { get; }
}
partial class A
{
public partial int X => 0;
}
多分一番うれしいのは GeneratedRegex
partial class A
{
[GeneratedRegex(@"\d+")]
public static partial Regex X { get; }
}
自動実装と宣言の区別付かない問題
partial class A
{
public partial int X { get; } // partial がついてるということはこれは宣言。
public int Y { get; } // これは自動実装。
}
partial class A
{
public partial int X { get; } // partial で自動実装はできないので、こっちも宣言。「実装がない」エラーになる。
}
この問題は元から:
interface IA
{
int X { get; } // これは宣言。
}
class A : IA
{
public int X { get; } // これは get-only プロパティ(自動実装)。フィールドが自動的にできる。
}
書くのは
https://ufcpp.net/study/csharp/oo_class.html#contextual-partial-keyword か https://ufcpp.net/study/csharp/oo_class.html#extended_partial_method の直後かな。
多分一番うれしいのは GeneratedRegex
自動実装と宣言の区別付かない問題
この問題は元から:
event も。
インターフェイスが元からなのもあるし、雑記ページでも新設? 少なくとも https://ufcpp.net/study/csharp/oo_class.html#partial に書くのははばかられる。