Megosztás:


A C# 15 újdonságai

A C# 15 az alábbi új funkciókat tartalmazza. Ezeket a funkciókat a Visual Studio 2026 legújabb verziójával vagy a .NET 11 előzetes verziójú SDK-val is kipróbálhatja:

A C# 15 a legújabb C# kiadás. A C# 15 támogatott a .NET 11-ben. További információért lásd: C# nyelv verziószámozás.

A .NET letöltési oldaláról letöltheti a legújabb .NET 11 előzetes verziójú SDK-t. A Visual Studio 2026 insidereket is letöltheti, amelyek tartalmazzák a .NET 11 előzetes verziójú SDK-t.

Az új funkciók akkor jelennek meg a "Újdonságok a C#-ban" oldalon, ha nyilvános előzetes kiadásban érhetők el. A roslyn funkció állapotlapjának munkakészlet szakasza nyomon követi, mikor az új funkciók egyesülnek a főágba.

A C# 15-ben bevezetett kompatibilitástörő változásokat a kompatibilitástörő változásokról szóló cikkünkben találja.

Megjegyzés:

Szeretnénk visszajelzést küldeni ezekről a funkciókról. Ha problémákat talál az új funkciók bármelyikével kapcsolatban, hozzon létre egy új problémát, a dotnet/roslyn adattárban.

Gyűjteménykifejezés argumentumai

Az alapul szolgáló gyűjtemény konstruktorának vagy gyári metódusának argumentumokat úgy adhat át, hogy egy with(...) elemet használ egy gyűjteménykifejezés első elemeként. Ez a funkció lehetővé teszi kapacitások, összehasonlítók vagy más konstruktorparaméterek megadását közvetlenül a gyűjteménykifejezés szintaxisában.

Az alábbi példa bemutatja, hogyan adhat át kapacitásargumentumot egy List<T> konstruktornak és egy összehasonlítónak a HashSet<T>következőhöz:

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

A gyűjteménykifejezések argumentumairól a gyűjteménykifejezésekről vagy a funkcióspecifikációkrólszóló nyelvi referenciacikkben talál további információt. A gyűjtemény-inicializálók gyűjteménykifejezési argumentumainak használatáról további információt az Objektum- és gyűjtemény inicializálók című témakörben talál.