티스토리 뷰

프로그래밍/C#

ref keyword, out keyword

알 수 없는 사용자 2016. 7. 27. 15:55

C#에서의 참조

 

C#에서는 형식 안전성과 보안을 유지하기 위해 기본적으로 포인터 산술 연산을 지원하지 않습니다.

그러나 unsafe 키워드를 사용하면 포인터를 사용할 수 있는 안전하지 않은 컨텍스트를 정의할 수 있습니다. 포인터에 대한 자세한 내용은 포인터 형식 항목을 참조하십시오 - MSDN

 

C#에서는 포인터를 통해 데이터를 참조하는 것을 권장하지 않는다.

그래서 참조에 의한 호출을 하려면 ref 키워드를 사용해야 한다.

public void Func(ref int a, ref int b)
{

// 함수의 내부에서 값을 복사해서 사용하는 게 아닌

// 참조해서 사용하는 경우

// 함수의 정의, 호출 시에 ref 키워드를 붙여주면 된다.

}

 

 

출력을 위한 매개 변수 out

 

참조에 의한 호출을 위해서 ref 키워드를 사용하지만,

출력 전용으로 사용할 수 있는 out 키워드가 존재한다.

 

기본 사용법은 ref 키워드와 동일하지만 차이점이 있다면

out 키워드를 사용하면 함수 내부에서 out 키워드를 붙인 파라미터에 결과를 저장하지 않으면

에러가 발생한다.

그리고 한눈에 보기에도 출력 매개변수라는 의미를 담고 있기 때문에 가독성에 도움을 준다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함