다음을 통해 공유


C# 15의 새로운 기능

C# 15에는 다음과 같은 새로운 기능이 포함되어 있습니다. 최신 Visual Studio 2026 버전 또는 .NET 11 미리 보기 SDK를 사용하여 이러한 기능을 사용해 볼 수 있습니다.

C# 15는 최신 C# 릴리스입니다. C# 15는 .NET 11에서 지원됩니다. 자세한 내용은 C# 언어 버전 관리참조하세요.

.NET 다운로드 페이지에서 최신 .NET 11 미리 보기 SDK 를 다운로드할 수 있습니다. Visual Studio 2026 인사이더 빌드를 다운로드하면 .NET 11 미리 보기 SDK도 포함됩니다.

새 기능은 공개 미리 보기 릴리스에서 사용할 수 있는 경우 "C#의 새로운 기능" 페이지에 추가됩니다. roslyn 기능 상태 페이지작업 세트 섹션은 예정된 기능이 메인 브랜치에 병합될 때를 추적합니다.

C# 15에 도입된 주요 변경 사항주요 변경 사항 문서에서 찾을 수 있습니다.

비고

이러한 기능에 대한 피드백에 관심이 있습니다. 이러한 새로운 기능에 문제가 있는 경우 새 문제를 dotnet/roslyn 리포지토리에 만드세요.

컬렉션 식 인수

컬렉션 식의 첫 번째 요소로 with(...) 요소를 사용하여 기본 컬렉션의 생성자나 팩터리 메서드에 인수를 전달할 수 있습니다. 이 기능을 사용하면 컬렉션 식 구문 내에서 직접 용량, 비교자 또는 기타 생성자 매개 변수를 지정할 수 있습니다.

다음 예제에서는 용량 인수를 List<T> 생성자에 전달하고, 비교자를 HashSet<T>에 전달하는 방법을 보여줍니다.

string[] values = ["one", "two", "three"];

// Pass capacity argument to List<T> constructor
List<string> names = [with(capacity: values.Length * 2), .. values];

// Pass comparer argument to HashSet<T> constructor
HashSet<string> set = [with(StringComparer.OrdinalIgnoreCase), "Hello", "HELLO", "hello"];
// set contains only one element because all strings are equal with OrdinalIgnoreCase

컬렉션 식 또는 기능 사양에 대한 언어 참조 문서에서 컬렉션 식 인수에 대해 자세히 알아볼 수 있습니다. 컬렉션 이니셜라이저에서 컬렉션 식 인수를 사용하는 방법에 대한 자세한 내용은 개체 및 컬렉션 이니셜라이저를 참조하세요.