Sobes.tech
Middle+

Welche Vorteile bietet die Version C# 12?

sobes.tech KI

Antwort von AI

  • Einmalige Lambda-Ausdrücke (Primärkonstruktoren)
  • Der typeof-Ausdruck, um den Typ eines Inline-Arrays zu erhalten
  • Interceptor (Interceptors) - eine experimentelle Funktion, um Methodenaufrufe abzufangen und während der Kompilierung zu ersetzen.
// Primärkonstruktoren in C# 12
public class MyClass(int param1, string param2)
{
    // Die Parameter des Konstruktors sind im Klassenkörper zugänglich
    public int Property1 { get; } = param1;
    public string Property2 { get; } = param2;
}

// Verwendung
var instance = new MyClass(10, "hello");
// typeof für Inline-Arrays in C# 12
[System.Runtime.CompilerServices.InlineArray(10)]
public struct MyInlineArray<T>
{
    private T _element0; // Der Name ist egal
}

// typeof(MyInlineArray<int>) gibt System.Runtime.CompilerServices.InlineArray<int> zurück
// typeof(MyInlineArray<int>[0]) gibt System.Int32 zurück
Console.WriteLine(typeof(MyInlineArray<int>));
Console.WriteLine(typeof(MyInlineArray<int>[0]));