Neu in .NET 10.0 [12]: Mehr Konvertierungen für Spans in C# 14.0

In C# 14.0 sind neue automatische Konvertierungen zwischen Arrays und Span<T> sowie ReadOnlySpan<T> enthalten.

vorlesen Druckansicht

(Bild: Pincasso/Shutterstock)

Lesezeit: 1 Min.
Von
  • Dr. Holger Schwichtenberg
close notice

This article is also available in English. It was translated with technical assistance and editorially reviewed before publication.

Im Rahmen der Initiative „First-Class Span Types“ sind in C# 14.0 neue automatische Konvertierungen zwischen Arrays und Span<T> sowie ReadOnlySpan<T> enthalten.

Der Dotnet-Doktor – Holger Schwichtenberg
Der Dotnet-Doktor – Holger Schwichtenberg

Dr. Holger Schwichtenberg ist technischer Leiter des Expertennetzwerks www.IT-Visions.de, das mit 53 renommierten Experten zahlreiche mittlere und große Unternehmen durch Beratungen und Schulungen sowie bei der Softwareentwicklung unterstützt. Durch seine Auftritte auf zahlreichen nationalen und internationalen Fachkonferenzen sowie mehr als 90 Fachbücher und mehr als 1500 Fachartikel gehört Holger Schwichtenberg zu den bekanntesten Experten für .NET und Webtechniken in Deutschland.

Wenn die Klasse Developer von der Basisklasse Person erbt und es ein Array von Developer-Objekten gibt

Developer[] devArray = new Developer[3];

dann gab es bisher schon folgende Konvertierungen von Array zu Spans:

Span<Developer> devSpan = devArray;
ReadOnlySpan<Developer> devROSpan = devArray;
ReadOnlySpan<Person> personROSpan = devArray;

Videos by heise

In C# 14.0 sind zusätzlich neuerdings folgende Umwandlungen möglich:

ReadOnlySpan<Person> personROSpanFromDevSpan = devSpan;
ReadOnlySpan<Person> personROSpanFromDevROSpan = devROSpan;

Allerdings sind folgende Konvertierungen in C# 14.0 weiterhin nicht erlaubt:

Span<Person> personSpan = devArray; 
Span<Person> personSpanFromDevSpan = devSpan; 

(rme)