본문 바로가기
CSharp/CSharp 문법

readonly struct로 값 타입 최적화하기

by MonoSoft 2025. 3. 26.
728x90
반응형

readonly struct로 값 타입 최적화하기

 

 

C#의 readonly struct는 값 타입(Struct)의 불변성을 보장하고 
성능 최적화에 큰 도움이 되는 기능입니다.
값 타입은 주로 작은 데이터 덩어리를 표현할 때 사용되며, 
readonly를 붙이면 의도치 않은 변경을 방지할 수 있습니다.

using System;

public readonly struct Point
{
    public int X { get; }
    public int Y { get; }

    public Point(int x, int y)
    {
        X = x;
        Y = y;
    }

    public double Distance => Math.Sqrt(X * X + Y * Y);
}

class Program
{
    static void Main()
    {
        Point p = new Point(3, 4);
        Console.WriteLine($"Distance from origin: {p.Distance}"); // 5.0 출력
    }
}

1.readonly struct는 구조체의 모든 필드와 속성이 생성 이후 변경되지 않도록 강제합니다.
2.불필요한 복사를 방지하고, JIT 컴파일러가 더 많은 최적화를 할 수 있습니다.
3.특히 고성능 라이브러리나 수학/그래픽 연산에 적합합니다.

 

728x90
반응형

댓글