关于VC中enum { IDD = IDD_ABOUTBOX }用法一点看法_lizhon...(转载)

本文解释了在VC++中为何使用enum而非const定义对话框ID。通过枚举类型定义对话框ID能增强代码的可读性和理解性,并列举了枚举类型的多个优点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

* * 7位粉丝 * 1楼 VC++基于对话框的程序中,在基于CDialog类的类头文件中,在类的成员变量声明部分,总会有类似 enum { IDD = IDD_AAAAA }的声明, 作用: enum在这里的作用就是相当于类里面定义的常量,此常量用来唯一标识此对话框类对应的对话框,也就是此对话框的ID号. 疑问: 为什么要采用如此常量的定义方式,而不是其它关键字呢?比如const? 解惑: 首先我们应该对enum这种枚举型的优点,或其存在的意义有所了解才能真正弄清此问题, 枚举类型: C语言或C++的一种构造类型,它用于声明一组命名的常数。  (1)枚举的声明:枚举声明用于声明新的枚举类型。   访问修辞符 enum 枚举名:基础类型   {   枚举成员   }   基础类型必须能够表示该枚举中定义的所有枚举数值。枚举声明可以显式地声明 byte、sbyte、short、ushort、int、uint、long 或 ulong 类型作为对应的基础类型。没有显式地声明基础类型的枚举声明意味着所对应的基础类型是 int。   (2)枚举成员   枚举成员是该枚举类型的命名常数。任意两个枚举成员不能具有相同的名称。每个枚举成员均具有相关联的常数值。此值的类型就是枚举的基础类型。每个枚举成员的常数值必须在该枚举的基础类型的范围之内。   示例:   public enum TimeofDay:uint   {   Morning=-3,   Afternoon=-2,   Evening=-1   }   产生编译时错误,原因是常数值 -1、-2 和 –3 不在基础整型 uint 的范围内。 枚举类型的优点: 1.它将使程序更容易编写,阅读和维护 2.它是强类型的,不能将一个枚举做为另一个枚举值来使用 3枚举类型定义的符号是常量值,编译器一旦发现代码引用了一个枚举型的符号,在编译时就会用数值替换该符号 4.直观,易于理解,加强可读性 性别、月份、星期几、颜色、单位名、学历、职业等,都不是数值数据...如果用一个数值来代表某一状态,这种处理方法不直观,易读性差...如果能在程序中用自然语言中有相应含义的单词来代表某一状态,则程序就很容易阅读和理解...也就是说,事先考虑到某一变量可能取的值,尽量用自然语言中含义清楚的单词来表示它的每一个值,这种方法称为枚举方法,用这种方法定义的类型称枚举类型。 结论: 关于VC中使用 enum { IDD = IDD_ABOUTBOX }来声明对话框ID的用法(以本人理解)是基于程序更其易于理解,加强程序的可读性方面考虑的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值