C#에서 함수가 여러 개의 값을 반환해야 할 때, out 키워드와 Tuple을 사용할 수 있다.
둘 다 여러 값을 반환할 수 있지만, 방식과 사용 용도가 조금 다르다.
튜플은 가독성이 좋고 요즘 많이 사용되는 방식이라고 한다.
다만 최적화가 필요한 경우 out 키워드가 더 나을 수 있다.
Out 키워드
out 키워드를 사용하면 함수 내부에서 전달된 변수를 직접 수정할 수 있다.
즉, 함수가 void라도 out 키워드를 사용하면 여러 개의 값을 반환할 수 있다.
위 코드에서 Calculate 함수는 void 지만, sum과 product 값을 out을 통해 반환한다.
- C# 7.0 이전
함수 호출 전에 sum과 product 변수를 미리 선언해야 했다.
out 키워드는 함수 내부에서 값을 설정하지만, 변수 자체는 호출 전에 존재해야 했다.
- C# 7.0 이후 (인라인 선언 가능)
out int sum, out int product 처럼 함수 호출 시점에 변수 선언이 가능해졌다.
가독성이 올라가고, 불필요한 변수 선언이 줄어들었다.
튜플(Tuple) 반환
튜플은 void 자리에 사용하여 함수의 반환값이 명확해진다.
굳이 (int sum, int product)를 쓰지 않고 var를 사용해도 된다.
var를 사용하면 더 깔끔한 코드가 가능하다.
다만 Tuple 객체를 생성하므로 미세한 오버헤드가 발생할 수 있다고 한다.
'유니티' 카테고리의 다른 글
[유니티] #2 수박 게임 만들기 (UI) (0) | 2025.02.26 |
---|---|
[유니티] 게임 재화 저장하는 방법 : PlayerPrefs + XOR 연산, JSON + AES-256 (0) | 2025.02.25 |
[유니티] #1 수박 게임 만들기 (최적화) (0) | 2025.02.15 |
[유니티] 디자인 패턴 : 오브젝트 풀링 (Object Pooling) (0) | 2025.02.15 |
[유니티] #18 광부 타이쿤 게임 만들기 (구름, 통화 시스템) (0) | 2025.02.08 |