안녕하세요.
오늘은 ref와 out의 차이점에 대해 학교 C#수업 복습할 겸 써보게 되었습니다.
우선, ref와 out의 차이를 알아보기 전에 '공통점' 에 대해 먼저 알아보겠습니다.
ref와 out은 모두 메서드의 변수를 참조로 전달하여 메서드 외부의 변수값을 직접 수정할 수 있다는 점 입니다.
또한 런타임에 다르게 처리되며 컴파일 시간에 동일하게 처리된다는 공통점도 있습니다.
이제, ref와 out의 차이를 명확하게 구분할 수 있도록 차이점을 표로 정리해보았습니다.
| 키워드 | ref | out |
| 매개변수 전달 전 초기화 여부 | O | X |
| 호출 메서드로 돌아가기 전 매개변수 초기화 여부 | X | O |
| 데이터 전달 | 양방향 | 단방향 |
깔끔하게 표로 정리하니까 한눈에 들어오네요.
앞으로도 이 표를 생각날때마다 봐서 숙지하도록 해야겠습니다.
이제 ref와 out을 언제 사용하면 좋을지까지 알아보고 마무리하겠습니다.
ref는 기존 값을 수정해야하거나 전달해야할때, 초기화된 변수를 전달할 때 사용합니다.
out은 메서드에서 새롭게 값을 생성하여 반환해야할 때, return으로 여러개의 값을 반환하고싶을때, 메서드 실행 전 변수의 값이 중요하지 않을 때 등에 사용됩니다.
오늘의 내용은 여기까지입니다.
감사합니다!
'공부블로그' 카테고리의 다른 글
| [공부 블로그] 유니티 FSM에 대하여 - 2 (0) | 2025.09.13 |
|---|---|
| [공부블로그] 유니티 FSM에 대하여 - 1 (0) | 2025.09.13 |
| [공부 블로그] 유니티 오브젝트 거리 측정하기 & 원리 (0) | 2025.09.04 |
| [공부 블로그] SOLID 원칙에 대하여 (0) | 2025.08.21 |
| [C#] 여러가지 반복문 (0) | 2025.03.29 |