1. ref vs out : 공통점
- 전달 방식: 값이 아니라 변수의 참조를 전달함 (Call by Reference)
- 값 변경: 함수 내부에서 값을 변경하면, 호출한 쪽 변수에도 반영됨
- 사용 목적: 메서드(함수)에서 원래 값을 수정하거나 반환하고 싶을 때 사용
2. ret vs out : 차이점
| 항목 | ref | out |
| 호출 전 초기화 여부 | 반드시 초기화되어야 함 | 최기화되어 있지 않아도 됨 |
| 메서드 내에서의 동작 | 값을 읽고/쓰기 가능 | 값을 반드시 할당(쓰기) 해야 함 |
| 주 사용 목적 | 값을 전달하고 내부에서 수정 | 값을 메서드를 통해 반환받기 용도 |
3. ref 예제 코드
void Increment(ref int number)
{
number++;
}
int value = 5;
Increment(ref value);
Console.WriteLine(value); // 6
3. Out 예제 코드
void GetValues(out int x, out int y)
{
x = 10;
y = 20;
}
int a, b;
GetValues(out a, out b);
Console.WriteLine($"a: {a}, b: {b}"); // a: 10, b: 20'Programming > C#' 카테고리의 다른 글
| C# 박싱과 언박싱 (0) | 2025.07.07 |
|---|---|
| C# 문자열 (0) | 2025.06.17 |
| C# is와 as (Type Checking and Casting) (0) | 2025.06.11 |
| C# Convert, Parse와 TryParse (0) | 2025.06.10 |
| C# 문법 기초 - C++과 다른 점 (5) | 2025.06.09 |
