결론: 둘 다 매개변수에서 사용되지만 ref는 사용하기 전에 초기화해야하고 out은 초기화하지 않아도 문제가 생기지 않는다.
ref는 메모리자체를 읽어와서 사용하기 때문에 초기화가 되지 않으면 그 값을 읽어와서 쓸 수 없기 때문에 오류가 발생한다
따라서 매개변수로 넘길값이 초기화가 완료되어 있어야만 한다.
out 메모리 주소로 변수에 접근하지만, 그곳에 값을 할당까지 해준다. 그렇기 때문에 값을 초기화하지 않아도 함수 내부에서 계산 후 결과값을 반환해줄 수 있다.
'나는 내 기억력을 믿지 않는다' 카테고리의 다른 글
가비지 컬렉터를 회피하기 위한 몇 가지 전략 (0) | 2024.01.24 |
---|---|
가비지 컬렉터 (0) | 2024.01.23 |
[기술면접] int와 float의 표현 가능한 수의 범위가 다른 이유 (0) | 2024.01.11 |
[C#] 텍스트 rpg 후기 (0) | 2023.11.23 |
C# Remove() , RemoveAt()등 Remove() 함수들 (1) | 2023.11.22 |