Skip to content

FR CSharp Structs Records

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

Structures, enregistrements, tuples et comparaison

Manuel C# · Exemples UO

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.

Exemple simple (Example.cs)

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.

Clone this wiki locally