내일배움캠프_TIL

11월 10일 TIL

skybluesky 2023. 11. 10. 21:18

확장 메서드

 

확장 메서드는 기존의 클래스에 메서드를 추가하는 방법이다

vector3에 대한 확장 메서드를 만든다고 가정해보자

public static class Vector3Extension
{
    public static Vector3 SetX(this Vector3 vec, float x)
    {
        return new Vector3(x, vec.y, vec.z);
    }
}

먼저 static 클래스를 만들어야 한다

확장 메서드는 정적 클래스 안에 있어야 한다

생성하고 싶은 메서드의 첫번째 매개변수는 this 확장하려는 타입으로 지정해야한다

이렇게 만든 확장 메서드는 다음과 같이 사용한다

Vector3 myVec = new Vector3(1, 2, 3);
myVec = myVec.SetX(5);