Programming/C# & Unity

C# static 멤버 함수

장형이 2022. 11. 20. 16:16

개요

static 멤버 함수를 어떨 때 사용하면 좋은지 공유하기 위하여 포스팅하였다.

 

일반적인 사용처

class TestClass
{
    private static int initCount = 0;

    public TestClass()
    {
        Interlocked.Increment(ref initCount);
    }

    public static void PrintInitCount()
    {
        Console.WriteLine(initCount);
    }
}

TestClass.PrintInitCount();

제일 많이 쓰는 방법.

한 클래스의 범 인스턴스적으로 공용하여 쓰는 static 멤버 변수를 외부 클래스에서 사용하거나 해야 할 때 위와 같이 static 멤버 변수를 많이 쓴다.

 

this를 사용하지 않는 멤버 함수 알리기

class TestClass
{
    public void PrintCalcedNumber(int number)
    {
        // Calc Number가 this(TestClass)를 건들지 않을 것을
        // 확신 할 수 있음.
        Console.WriteLine(CalcNumber(number));
    }

    private static int CalcNumber(int number)
    {
        return number / 2;
    }
}

위와 같은 private static 멤버 함수를 사용하면 해당 함수는 this를 사용하지 않음을 알릴 수 있어서 좋다.