Amélioration de “fixed” (C# 7)

Avancé Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire Avant C# 7.3   GCHandle Fixed pattern   Implémentation de GetPinnableReference() Utiliser fixed pour déclarer un buffer C# 7 Fonctionnalités C# 7 Manipuler des objets de type valeur par référence (ref) Passage d’argument par référence d’un objet de…

Continuer à lire

Structure exclusivement stockée dans la pile: “ref struct” (C# 7)

Avancé Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire readonly struct ref struct Managed pointer Span<T>   Utilisation de Span<T> suivant le framework   Fonctionnement stackalloc   Quantité de mémoire allouée sur la pile readonly ref struct C# 7 Fonctionnalités C# 7 Manipuler des objets de type valeur…

Continuer à lire

Pattern matching (C# 7)

Basique Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire Avec is Avec switch…case when avec switch…case Utilisation de var avec is ou switch…case Objets de type valeur Support des génériques Point de vue d’architecture A partir de C# 7.0, quelques notions de programmation fonctionnelle sont…

Continuer à lire

Tuple et ValueTuple (C# 7)

Basique Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire Amélioration à partir de C# 7.0 Initialisation Utiliser des noms de membres explicites Noms de membres déterminés par des variables existantes Utiliser .Item1, .Item2, …, .Item<N> est toujours possible Affectation entre System.ValueTuple Déconstruction Ignorer une variable…

Continuer à lire

Manipuler des objets de type valeur par référence (C# 7)

Confirmé Cet article fait partie d’une série d’articles sur les apports fonctionnels de C# 7 (i.e. C# 7.0/7.1/7.2/7.3). Sommaire Avant de commencer… Type valeur vs type référence   Objets de type référence   Objets de type valeur Boxing vs Unboxing   Boxing   Unboxing Passage d’argument par référence d’un objet de type valeur Passage en argument d’une référence par…

Continuer à lire