Maison > développement back-end > C++ > Comment puis-je améliorer la lisibilité des énumérations en utilisant des descriptions personnalisées ?

Comment puis-je améliorer la lisibilité des énumérations en utilisant des descriptions personnalisées ?

Patricia Arquette
Libérer: 2025-01-19 11:22:10
original
496 Les gens l'ont consulté

How Can I Improve Enum Readability by Using Custom Descriptions?

Amélioration de la lisibilité des énumérations : utilisation de descriptions personnalisées

Une discussion précédente portait sur l'attribution de noms descriptifs aux valeurs d'énumération. Pour élaborer :

Bien que l'exemple d'énumération contienne des valeurs avec des espaces et des points, les noms d'énumération doivent suivre des conventions de dénomination spécifiques : généralement des mots simples sans ponctuation ni espaces.

Pour des valeurs d'énumération plus conviviales, exploitez l'attribut Description. Cet attribut vous permet d'ajouter une chaîne descriptive à chaque membre de l'énumération, améliorant considérablement la clarté du code.

Voici une méthode d'extension utile pour récupérer facilement ces descriptions :

<code class="language-csharp">public static string GetDescription(this Enum value)
{
    Type type = value.GetType();
    string name = Enum.GetName(type, value);
    if (name != null)
    {
        FieldInfo field = type.GetField(name);
        if (field != null)
        {
            DescriptionAttribute attr = 
                   Attribute.GetCustomAttribute(field, 
                     typeof(DescriptionAttribute)) as DescriptionAttribute;
            if (attr != null)
            {
                return attr.Description;
            }
        }
    }
    return null;
}</code>
Copier après la connexion

Cette méthode simplifie l'accès à la description de n'importe quelle valeur d'énumération. Voir l'exemple ci-dessous :

<code class="language-csharp">public enum MyEnum
{
    [Description("Description for Foo")]
    Foo,
    [Description("Description for Bar")]
    Bar
}

MyEnum x = MyEnum.Foo;
string description = x.GetDescription();</code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal