首页 >后端开发 >C++ >如何通过使用自定义描述来提高枚举可读性?

如何通过使用自定义描述来提高枚举可读性?

Patricia Arquette
Patricia Arquette原创
2025-01-19 11:22:10579浏览

How Can I Improve Enum Readability by Using Custom Descriptions?

提高枚举可读性:使用自定义描述

之前的讨论涉及为枚举值分配描述性名称。 详细说明:

虽然示例枚举包含带有空格和句点的值,但枚举名称必须遵循特定的命名约定 - 通常是没有标点符号或空格的单个单词。

要获得更用户友好的枚举值,请利用 Description 属性。此属性允许您向每个枚举成员添加描述性字符串,从而显着提高代码清晰度。

这是一个有用的扩展方法,可以轻松检索这些描述:

<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>

此方法简化了对任何枚举值的描述​​的访问。 请参阅下面的示例:

<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>

以上是如何通过使用自定义描述来提高枚举可读性?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn