C# 구조체 활용하기: 정의부터 기본 메서드까지

C# 구조체 활용하기: 정의부터 기본 메서드까지

이번 글에서는 C# 언어에서 사용되는 구조체의 기본적인 개념과 활용 방법에 대해 알아보겠습니다. 구조체는 여러 변수를 하나의 데이터 타입으로 묶어 관리할 수 있는 편리한 도구입니다.

1. 구조체란?

구조체는 여러 개의 변수를 묶어 하나의 새로운 데이터 타입으로 정의할 수 있는 사용자 정의 데이터 타입입니다. 클래스와 비슷한 점이 있지만, 값 타입으로 동작하며 주로 작은 데이터 구조를 표현하는 데 사용됩니다.

2. 구조체 선언 및 초기화

구조체를 선언하는 방법은 간단합니다. `struct` 키워드를 사용하여 정의하고, 변수를 포함할 수 있습니다.

struct Point
{
    public int x;
    public int y;
}

Point p = new Point { x = 10, y = 20 };

위 예제에서는 `Point`라는 이름의 구조체를 선언하고, x와 y라는 두 개의 변수를 초기화했습니다.

3. 기본 변수와 메서드 활용

구조체 내부에서도 메서드를 정의하여 사용할 수 있습니다.

struct Point
{
    public int x;  // x 좌표
    public int y;  // y 좌표

    // 좌표 설정 메서드
    public void SetPoint(int newX, int newY)
    {
        x = newX;
        y = newY;
    }

    // 좌표 출력 메서드
    public void DisplayPoint()
    {
        Console.WriteLine($"Point: ({x}, {y})");
    }
}

Point p1 = new Point();
p1.SetPoint(5, 10);    // p1의 좌표를 (5, 10)으로 설정
p1.DisplayPoint();     // p1의 좌표 출력

위 예제에서 `Point` 구조체에는 변수 외에도 `SetPoint` 및 `DisplayPoint`라는 메서드를 정의하였습니다.

4. 구조체의 특징 및 장점

구조체는 값 타입으로 동작하기 때문에 스택 메모리에 할당됩니다. 따라서 클래스보다 접근 속도가 빠르며, 짧은 수명주기를 가진 작은 데이터를 관리하는데 적합합니다.

5. 결론

C#의 구조체는 다양한 데이터를 묶어 관리하고 싶을 때 유용한 도구입니다. 특히 작은 데이터 구조를 표현하고 싶을 때 적합하며, 메서드와 변수를 함께 포함할 수 있어 활용도가 높습니다.

참고자료

함께 보면 좋은 이전 게시글

위로 스크롤