Skip to content

C# Feature - readonly struct

readonly struct marks a value type as immutable so the compiler can enforce that instance members do not mutate state.

C# 7.2 (2017)

public struct Distance
{
public double Meters { get; }
}
public readonly struct Distance
{
public double Meters { get; }
public Distance(double meters) => Meters = meters;
}
  • Use readonly struct for small immutable value objects.
  • Mutable fields defeat the purpose and should be avoided.