Repository navigation
FR CSharp Structs Records
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
struct — type de valeur ; class est un type de référence. record spécifie un type avec une sémantique d'égalité des données pratique ; record class et record struct sont possibles. with crée une copie de l'enregistrement avec les membres modifiés, en préservant l'objet d'origine.
Enregistrez cet exemple séparément dans Example.cs. Exécutez-le indépendamment des autres exemples de cette page.
Example.cs:
// PROJECT-EXAMPLE
var original = new Item("ore", 1);
var copy = original with { Count = 3 };
System.Console.WriteLine($"{original.Count}:{copy.Count}");
record Item(string Name, int Count);Résultat:
1:3
record Position(int X, int Y);
var first = new Position(10, 20);
var second = first with { X = 11 };
UO.Print($"First={first}, second={second}");readonly record struct Point(int X, int Y);
var point = new Point(10, 20);
(int X, int Y) coordinates = (point.X, point.Y);
var (x, y) = coordinates;
UO.Print($"{x}, {y}");Un tuple regroupe plusieurs valeurs sans déclaration de classe distincte. Ses noms d’éléments améliorent la lisibilité, mais ne créent pas de nouveau type indépendant. Pour les types natifs, faites la distinction entre l'égalité de référence, Equals, et l'opérateur surchargé ==.
Documentation officielle : Structures, enregistrements, tuples et comparaison - Microsoft Learn.
ClassicUO — Bad Newbie & C# Scripts IDE