Files
CsharpVersionHistory/Version11.0/README.md
2025-09-28 17:52:30 +02:00

1.7 KiB

C# Version 11.0

Veröffentlicht im November 2022.

Neue Features

Unformatierte Zeichenfolgenliterale

Mehrzeilige Strings ohne Escape-Zeichen.

string text = """
    Zeile 1
    Zeile 2
    """;

Generische Mathematik

Numerische Algorithmen können für alle Zahlentypen geschrieben werden.

static T Add<T>(T a, T b) where T : INumber<T> => a + b;

Generische Attribute

Attribute können generisch sein.

[MyAttribute<int>]
public class Beispiel { }

UTF-8-Zeichenfolgenliterale

Direkte UTF-8-Strings.

ReadOnlySpan<byte> utf8 = "Hallo"u8;

Zeilenvorschübe in Zeichenfolgeninterpolation

Zeilenumbrüche sind in interpolierten Strings erlaubt.

string info = $"Name: {name}
Alter: {alter}";

Listenmuster

Vergleich von Listenstrukturen mit Mustern.

if (arr is [1, 2, ..])
{
    // Beginnt mit 1, 2
}

Dateilokale Typen

Typen können nur innerhalb einer Datei sichtbar sein.

file class Helper { }

Erforderliche Member

Member müssen beim Initialisieren gesetzt werden.

public class Person
{
    public required string Name { get; set; }
}

Automatische Standardstrukturen

Strukturen erhalten automatisch einen Standardwert.

Musterabgleich Span für string

Vergleich von Span<char> mit konstanten Strings.

Erweiterter nameof-Bereich

nameof kann in mehr Kontexten verwendet werden.

Numerisches IntPtr

IntPtr unterstützt numerische Operationen.

ref-Felder und scoped ref

Mehr Kontrolle über Referenzen und Lebensdauer.

Verbesserte Methodengruppenkonvertierung zu Delegaten

Warnungswelle 7


C# 11.0 bringt viele Features für moderne, sichere und flexible Programmierung.