728x90
회사에서 평소와 같이 개발을 진행하던 중, 다음과 같은 문구를 만나게 되었습니다.
자세히 보니까, 해당 변수를 인라인으로 선언할 수 있다는 말이었습니다.
찾아보니까, C# 7.0 부터는 out 파라미터를 보다 간단하게 사용할 수 있더라고요. 그걸 의미하는 문구였습니다.
그럼 어떻게 간단하게 사용하는지 예제 코드를 통해서 보여 드리도록 하겠습니다.
예제 코드
- 기존에는 먼저 out 파라미터에 들어가는 변수를 먼저 1차적으로 선언해야 했습니다.
- 그 다음에 매개변수로 해당 변수를 넘겨서 값은 저장하는 식이었지만, C# 7.0 부터는 변수 선언을 생략하고 매개변수로 바로 전달할 수 있도록 바뀌었습니다.
using System;
using System.Net;
using System.Net.Sockets;
namespace ConsoleApp6
{
class Program
{
static void Main(string[] args)
{
// C# 7.0 이전의 out 사용 방식
//int x, y; // 미리 선언
//GetXY(out x, out y);
// C# 7.0 부터 간편해진 out 파라미터
GetXY(out int x, out int y);
Console.WriteLine($"X : {x}, Y : {y}");
}
private static void GetXY(out int x, out int y)
{
x = 10;
y = 20;
}
}
}
실행 결과
- 다음과 같이 변수들이 제대로 출력되는 것을 확인할 수 있습니다.
출처 - https://afsdzvcx123.tistory.com/entry/C-%EB%AC%B8%EB%B2%95-C-70-%EC%97%90%EC%84%9C-%ED%8E%B8%EB%A6%AC%ED%95%B4%EC%A7%84-out-%ED%8C%8C%EB%9D%BC%EB%AF%B8%ED%84%B0-%EC%82%AC%EC%9A%A9%EB%B0%A9%EB%B2%95?category=679729
728x90
'VisualStudio > C#' 카테고리의 다른 글
C#[방법] 리플랙션(Reflection) Class 속성 출력 방법 (0) | 2022.10.11 |
---|---|
[C#] 제네릭 형식 제약 조건(Where) (0) | 2022.10.05 |
[C#] 리플렉션 개념 및 주의사항(Reflection) (0) | 2022.09.15 |
[C#] 리플렉션 개념 및 사용법(Reflection) (0) | 2022.09.14 |
[C#] 네이밍 규칙 / naming convention (0) | 2022.08.22 |