Sobes.tech
Middle+

Milliseid eeliseid pakub C# 12 versioon?

sobes.tech AI

Vastus AI-lt

  • Ühekordsed lambda väljendid (Põhikonstructorid)
  • typeof väljend inline-massiivi tüübi saamiseks
  • Interceptors - eksperimentaalne funktsioon, et püüda meetodite väljakutseid ja neid kompileerimise ajal asendada.
// C# 12 põhikonstructorid
public class MyClass(int param1, string param2)
{
    // Konstruktoriparameetrid on saadaval klassi kehas
    public int Property1 { get; } = param1;
    public string Property2 { get; } = param2;
}

// Kasutamine
var instance = new MyClass(10, "hello");
// typeof inline-massiivide jaoks C# 12
[System.Runtime.CompilerServices.InlineArray(10)]
public struct MyInlineArray<T>
{
    private T _element0; // Nimi ei ole oluline
}

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