Experiment/Unity

일반 제너릭 Ramda

hiheybye 2025. 4. 11. 19:19

 

//선언
    public class GameEvent
    {
    }
    

    public static void testRamda1(string message) => Debug.Log(message);
    public static void testRamda2() => Debug.Log("testRamda2");
    
    //제너릭
    public static void testRamda3<T>(T evt) where T : GameEvent
    {
        Debug.Log("testRamde3");
    }
    
    //메서드
    public static void testRamda4(GameEvent evt)
    {
        Debug.Log("testRamde4");
    }


//실행
	GameEvent evt = new GameEvent();

    TestRamda.testRamda1("testRamda1");
    TestRamda.testRamda2();
    TestRamda.testRamda3(evt);
   
    Action<GameEvent> testRamda4 = TestRamda.testRamda3;
    testRamda4(evt);
    Action<GameEvent> testRamda5 = (e) => TestRamda.testRamda3(e);
    testRamda5(evt);
    Action<GameEvent> testRamda6 = TestRamda.testRamda4;
    testRamda6(evt);
    Action<GameEvent> testRamda7 = (e) => TestRamda.testRamda4(e);
    testRamda7(evt);
    
//결과
testRamde1
testRamde2
testRamde3
testRamde3
testRamde3
testRamde4
testRamde4

'Experiment > Unity' 카테고리의 다른 글

Unity, C#, Action 과 +=, -=  (0) 2024.05.25