コンテンツにスキップ

C# 9.0

新機能

Record 型

  • Classの代替
  • コンストラクタ引数と同名のプロパティを自動作成

C# 10.0

Record型を参照型と値型で使い分けることが可能に(C#9.0では参照型のみ) - record, record class: 参照型 - record struct: 値型 後者は継承を持たない

プライマリコンストラクタ

record X(int Value)
{
    public int Squared { get; } = Value * Value;
    public int Cubed { get; } = Value * Value * Value;
    public double GetSqrt() => Math.Sqrt(Value);
}

init-only プロパティ

public int X { get; set; }
を
public int X { get; init; }
のようにすることで

Reference

Article


最終更新日: August 14, 2023
作成日: August 14, 2023