728x90
반응형
일단 공통점부터 말하자면 셋다 변수 참조 기능을 제공해주는 키워드입니다. C++의 &참조와 같다고 보셔도 무방합니다. 다만 기능에서 약간의 차이점이 있기 때문에 알아두시면 좋습니다.
ref의 특징
- ref 참조 변수를 넘겨주기 전에 해당 변수는 반드시 초기화 되어야합니다.
- 메소드or함수내에서 초기화가 되지 않아도 됩니다.
- 데이터가 양방향으로 전달될 수 있습니다.
- 조건부에 따라 변수값을 바꿔줘야할 때 유용합니다.
out의 특징
- 메소드or함수내에서 최소 1번은 반드시 초기화 되어야 합니다.
- 변수를 메소드or함수로 건내줄 때 초기화되지 않은 상태로 넘겨줄 수 있습니다.
- 데이터의 단방향 전송을 지향합니다.
- 함수의 return값이 여러개일 때 유용합니다.
in의 특징
- 매개변수가 따로 할당되지 않고 참조하기 때문에 메모리 낭비가 적습니다.
- 참조변수가 수정되지 않기 때문에 원본 데이터를 안전하게 지킬 수 있습니다.
- in 키워드는 매개변수를 읽기 전용으로 넘겨줄때 사용됩니다.
반응형
'C#' 카테고리의 다른 글
[C#] 접근 한정자 internal의 사용법 (0) | 2023.11.09 |
---|---|
[C#] Boxing과 Unboxing (1) | 2023.02.18 |
[C#] 애트리뷰트(Attribute) (0) | 2023.02.13 |
[C#] 리플렉션 (Reflection) (0) | 2023.02.13 |
[C#] 델리게이트(Delegate)와 이벤트(event)의 차이점 (0) | 2023.02.12 |