프로그래밍/C#2016. 12. 30. 22:47

일단 둘의 공통점은 둘다 레퍼런스 타입 이라는 것. 그리고 사용 목적이 비슷하다는 점.(둘다 메소드 내에서 어떤 값을 처리하는 용도.)


둘의 차이점은 

ref는 주로 메소드 내에서 원래 있던 값을 수정하고자 할 때 사용한다.

따라서 메소드 수행 전 해당 변수값이 미리 초기화가 되어 있어야 하고.


out는주로 메소드 내에서 생성된 새로운 값을 반환해 사용하고자 할 때 사용한다. 

따라서 해당 변수가 미리 초기화 되어 있을 필요는 없고.              

선언만 되어있는 상태여도 작동한다. 하지만 메소드 안에서 해당 값을 반드시 할당 해 주어야 한다.

'프로그래밍 > C#' 카테고리의 다른 글

가중치 랜덤 생성  (0) 2018.03.13
이진탐색  (0) 2018.03.11
c# string으로 class 인스턴스 생성하기  (0) 2017.09.04
c++ 의 템플릿과 c#의 제네릭  (0) 2016.12.29
c# 개념에대해 정리가 잘된곳  (0) 2016.11.02
Posted by JinFluenza