C # est connu pour sa multifonctionnalité, mais il a toujours été des limitations importantes qui ne peuvent pas être commutées en fonction du type. Cependant, avec l'émergence de nouvelles versions linguistiques, de nombreuses méthodes alternatives ont émergé pour éviter cette limite.
C # 7 MODE MACKING
C # 7 introduit la correspondance du mode, qui est un mécanisme élégant qui permet de changer directement en fonction du type. Considérez l'exemple suivant:
La correspondance du mode fournit une méthode simple et type de sécurité pour traiter différents types dans une instruction Switch, améliorant ainsi la lisibilité du code et promouvant des types de fonctionnement spécifiques plus efficaces.L'opérateur de noms () dans le C # 6
<code class="language-csharp">switch (shape) { case Circle c: WriteLine($"圆形,半径为 {c.Radius}"); break; // ... }</code>
Pour les utilisateurs C # 6, l'opérateur NameOf () fournit une solution alternative. En utilisant le nom de type comme une chaîne comme cible, vous pouvez créer l'instruction Switch comme indiqué ci-dessous:
Bien qu'il ne soit pas aussi universel que la correspondance du mode, cette méthode fournit une méthode fiable pour les classifications dans les versions C # 6 et antérieures.
C # 5 et les versions antérieures utilisent le nom de type du nom de type
<code class="language-csharp">switch (o.GetType().Name) { case nameof(AType): break; // ... }</code>
Pour les utilisateurs utilisant C # 5 et ci-dessous, l'instruction Switch Basic à l'aide d'une chaîne de nom de type de codage dur est toujours une méthode réalisable, bien que la flexibilité soit faible:
Bien qu'il n'ait pas la complexité de ses nouveaux objets correspondants, cette méthode peut toujours répondre aux besoins de prise de décision basés sur le type simple dans la première version de C #.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!