내일배움캠프

내일배움캠프 게임개발 과정 7일차: Ref 와 Out 키워드

pracumj 2024. 9. 20. 21:06

오늘 공부한 내용📝

오늘은  refout 키워드에 대해 배웠다. 두 키워드는 모두 참조에 의한 전달을 가능하게 하지만, 각각의 사용 방식과 조건이 다르다. 이를 통해 메서드가 값을 반환하거나, 여러 값을 수정하는 상황에서 유용하게 사용할 수 있다.

ref 키워드

  • 역할: ref는 변수를 참조로 전달하여, 메서드 내에서 값이 변경되면 원본 변수에도 그 값이 반영되도록 한다.
  • 사용 조건: 메서드에 전달하기 전에 변수가 반드시 초기화되어 있어야 한다.
  • 사용 예시:
int number = 10;
ModifyValue(ref number);

void ModifyValue(ref int value)
{
    value = 20;  // 원본 변수의 값이 20으로 변경됨
}

out 키워드

  • 역할: out은 메서드가 여러 값을 반환할 수 있게 하며, 메서드 내부에서 변수의 값을 반드시 설정해야 한다.
  • 사용 조건: out으로 전달된 변수는 메서드 호출 전에 초기화되지 않아도 괜찮다.
  • 사용 예시:
int number;
InitializeValue(out number);

void InitializeValue(out int value)
{
    value = 10;  // 메서드 내에서 반드시 값을 설정해야 함
}

 

ref와 out의 차이점

  • ref는 메서드에서 값을 수정할 수 있지만 초기값이 필요하며, out은 초기값 없이 변수를 전달하고 메서드에서 값을 할당해야 한다.

 

마무리😺

앞으로 다양한 상황을 경험하면서 ref와 out을 사용하는 방법을 익히고, 더 나은 코드를 작성할 수 있도록 노력해야겠다!!