1. 개념 정리
- params는 C#에서 가변 인자(Variable Arguments)를 받을 수 있게 해주는 키워드이다.
- 메서드 매개변수에 params를 붙이면, 호출 시 여러 개의 인자를 쉼표로 나열해서 전달할 수 있으며, 내부에서는 배열로 처리된다.
public void PrintNumbers(params int[] numbers)
{
foreach (int number in numbers)
{
Debug.Log(number);
}
}
2. 사용 목적
- 인자의 개수가 유동적일 때 유용하다.
- 매번 배열을 새로 만들어 넘기지 않아도 되므로 가독성과 사용 편의성이 높다.
3. 호출 방법 예시
PrintNumbers(1, 2, 3); // OK
PrintNumbers(); // OK (빈 배열로 처리)
PrintNumbers(new int[] { 4, 5, 6 }); // OK (배열로 직접 전달)
4. 주의 사항
- params는 반드시 매개변수 목록의 마지막에만 올 수 있다.
- 내부에서는 배열로 처리되므로, 성능 민감한 곳에서는 GC 부담이 될 수 있다.
- params를 썼다고 해서 오버로딩이 막히는 건 아니지만, 시그니처 혼동에 주의해야 한다.
5. 요약
| 항목 | 설명 |
| 키워드 목적 | 가변 인자 지원 (인자 0개 이상 가능) |
| 내부 처리 | 배열로 자동 변환 |
| 장점 | 호출 간결, 가독성 ↑ |
| 단점 | 배열 생성으로 인한 GC 부담 가능 |
'Unity > 기능' 카테고리의 다른 글
| [Unity] 회피 구현하기 (0) | 2025.09.12 |
|---|---|
| [Unity] Find 함수 (2) | 2025.08.07 |
| [Unity] CPU 와 GPU (1) | 2025.08.05 |
| [Unity] New Input System 사용하기3 (0) | 2025.07.18 |
| [Unity] 람다의 캡처와 클로저 개념 (2) | 2025.07.17 |