news 2026/3/2 4:31:51

27、枚举类型的深入解析与应用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
27、枚举类型的深入解析与应用

枚举类型的深入解析与应用

1. 设置底层类型和显式值

在定义枚举时,你可以使用除int之外的整数类型。方法是在枚举名称后面加上冒号和类型名称,不过该类型不能是char。枚举的所有成员常量都属于其底层类型,成员常量的值可以是底层类型的任意值。若要显式设置成员的值,可在枚举声明中成员名称后使用初始化器。成员名称不能重复,但值可以重复,示例代码如下:

enum TrafficLight : ulong { ... } enum TrafficLight { Green = 10, Yellow = 15, // 重复值 Red = 15 // 重复值 }

上述代码展示了两种等价的TrafficLight枚举声明方式,左边代码采用默认类型和编号,右边代码显式将底层类型设置为int,并为成员赋予对应默认值。

2. 隐式成员编号

你可以为枚举的成员常量显式赋值。若未对成员常量进行初始化,编译器会隐式为其赋值。编译器的赋值规则如下:
- 若成员是枚举的第一个成员且未显式赋值,则其值为 0。
- 若成员未显式赋值且不是第一个成员,则其值为前一个成员的值加 1。

以下是两个枚举声明的示例:

enum CardSuit { Hearts, // 0 - 因为是第一个成
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/28 16:25:47

36、LINQ查询操作全面解析

LINQ查询操作全面解析 1. where 子句 where 子句用于筛选出不符合指定条件的项,使其不再参与后续的查询操作。以下是关于 where 子句的一些关键信息: - 一个查询表达式可以包含任意数量的 where 子句,前提是这些子句位于 from...let...where 部分。 - 一个项必须满足所…

作者头像 李华
网站建设 2026/2/23 10:38:35

LOOT模组排序工具终极指南:彻底解决天际冲突问题

LOOT模组排序工具终极指南:彻底解决天际冲突问题 【免费下载链接】skyrimse The TES V: Skyrim Special Edition masterlist. 项目地址: https://gitcode.com/gh_mirrors/sk/skyrimse LOOT模组排序工具是《上古卷轴V:天际 特别版》玩家的必备神器…

作者头像 李华
网站建设 2026/3/1 16:24:49

Github-LLaMA Factory:百种大语言模型一站式高效微调平台

https://github.com/hiyouga/LLaMA-Factory1. 项目的主要功能和目的LLaMA Factory 是一个功能强大、易于使用的开源框架,旨在简化大型语言模型(LLMs)的微调过程。其核心目标是让研究人员和开发者能够以极低的代码成本(甚至零代码&…

作者头像 李华
网站建设 2026/2/28 16:42:25

大模型微调微调神器——LLaMA-Factory

1. LLaMA-Factory 介绍LLaMA-Factory 是一个开源的大语言模型微调框架,专门为LLaMA系列模型及其他开源大模型提供高效、便捷的微调解决方案。 核心特点: 高效训练:支持QLoRA、LoRA、全参数微调等多种高效微调方法易于使用:提供Web…

作者头像 李华
网站建设 2026/2/28 23:44:40

CopyTranslator:PDF文献翻译效率提升10倍的智能翻译工具

CopyTranslator:PDF文献翻译效率提升10倍的智能翻译工具 【免费下载链接】CopyTranslator 项目地址: https://gitcode.com/gh_mirrors/cop/CopyTranslator CopyTranslator是一款专为科研人员和英文文献阅读者设计的智能翻译软件,能够自动处理PDF…

作者头像 李华