当前位置: 首页 > news >正文

c#中,enum类型必须是整数类型

一、支持的整数基础类型

enum Color : byte      // 显式指定byte类型(0-255)
{Red,Green,Blue
}enum HttpStatus : short  // short类型
{OK = 200,NotFound = 404
}// 默认是int类型
enum Status { Pending, Active }  // 相当于 : int
 
允许的底层类型:
  • byte, sbyte
  • short, ushort
  • int, uint(默认)
  • long, ulong

二、限制:不能是非整数

// ❌ 编译错误!这些都不允许:
enum Color 
{Red = "ff0000",      // 错误:不能是字符串Blue = 3.14,         // 错误:不能是浮点数Green = new object() // 错误:不能是对象
}
 
编译器报错:enum underlying type must be an integral type

三、常见误解澄清

1. 字符串怎么办?用 Description 特性

using System.ComponentModel;enum UserStatus
{[Description("用户活跃")]Active,[Description("账户已禁用")]Disabled
}// 读取字符串值
static string GetDescription(Enum value) { /* 反射读取Description */ }
 

2. 需要多个值?用 Flags 位标志

[Flags]
enum Permissions
{Read = 1 << 0,   // 1Write = 1 << 1,  // 2Delete = 1 << 2  // 4
}var perms = Permissions.Read | Permissions.Write;  // 值为3
 

3. 复杂数据?用扩展方法或字典

enum ApiError
{NetworkTimeout,InvalidToken
}static class ApiErrorExtensions
{public static string Message(this ApiError error) => error switch{ApiError.NetworkTimeout => "网络超时",ApiError.InvalidToken => "令牌无效",_ => "未知错误"};
}
 

四、总结表


能否支持示例说明
✅ 整数类型 byteintlong 必须是8种整数类型之一
✅ 整数表达式 Red = 1 + 2 编译时常量整数表达式
❌ 字符串 "red" 直接赋值不允许,用Description特性
❌ 浮点数 3.14f 根本不支持
❌ 对象/类 new MyClass() 根本不支持
http://www.rkmt.cn/news/46454.html

相关文章:

  • 2025年比较好的平板车杭州环保装修
  • 印度股票市场数据API接口
  • 2025年靠谱的数字程控交换机厂家选购指南与推荐
  • 2025年评价高的无人机航拍飞手接单最新推荐榜
  • 2025年广东大巴车租车公司权威推荐榜单:旅游大巴包车/55座大巴租车/租车公司服务源头厂家精选
  • 2025年热门的减震硅胶制品厂家最新TOP排行榜
  • 2025年11月洗碗机品牌对比榜:海信五翼喷淋技术领先
  • 2025年质量好的薄型液压缸行业内口碑厂家排行榜
  • 可溶性蛋白的表达优化与稳定性研究:从原核到真核系统的技术突破
  • 2025年靠谱的控制柜品牌厂家排行榜
  • 应急响应手册-Windows 挖矿病毒查杀以及修复实践
  • 2025年AI GOE优化供应厂家哪家靠谱指南
  • 开源能源管理系统五大核心趋势:定义下一代能源管理新范式
  • 2025年专业的高弹单层网布厂家最新权威实力榜
  • 2025年靠谱的止水螺杆厂家实力及用户口碑排行榜
  • 2025年评价高的热镀锌止水钢板厂家最新实力排行
  • ​高压隔离探头在能源变换系统中的精确测量应用方案​
  • 2025年耐用的真空表面处理厂家推荐及选择指南
  • 2025年质量好的冰箱门电器开关实力厂家TOP推荐榜
  • 【Redis】用Redis搭建分布式锁、乐观锁
  • 2025年评价高的重卡充电桩厂家最新权威实力榜
  • 详细介绍:从美团到朴朴、我店与远方好物:本地生活的四种演化路径与未来趋势
  • 2025年质量好的高分子材料流延机行业内口碑厂家排行榜
  • 2025年比较好的隔热条厂家最新用户好评榜
  • CF 980 Div.2 解题报告
  • 2025年质量好的废气处理工程行业内知名厂家排行榜
  • 使用 Java、Spring Boot 和 Spring AI 开发符合 A2A 标准的 AI 智能体
  • 2025年口碑好的装配式轻钢龙骨热门厂家推荐榜单
  • 2025年评价高的三层式恒温恒湿试验箱用户口碑最好的厂家榜
  • 2025年11月远程控制软件推荐:主流排行榜与口碑评价对比指南