utilities(C++)——枚举(枚举)

对枚举类型(enum)的理解,通过变量名为有限状态空间(可列举)中的每一种状态赋予实际意义;

比如灯的状态,On/Off 显然要比布尔类型的0/1有意义得多;
比如一周七天,显然 Monday-Sunday,要比0-6有意义得多;

我们真正想要从枚举当中获得并非数值,并非字符串,而是可能的情况数,或者说样本空间的大小。

enum 与 switch

switch:转换,开关;

  • enum实现对有限状态空间的状态的标识
  • switch实现对有限状态空间的状态的识别(case one:)与处理;

经典枚举类型按列

  • 描述一个数值的形态

    enum AttrType
    {
        Unknown,
        Continuous,
        Discrete
    };
  • code(返回值代码)

    class MyError {
    public:
        enum Code
        {
            SUCCESS,
            WARNING,
            IO_ERROR,
            READ_ERROR,
            WRITE_ERROR
        };
    };
    
    
    MyError::Code func()
    {
        return MyError::Code::SUCCESS;
    }
  • 比较标准

    enum cmp_mode { normal, nocase };

你可能感兴趣的:(utilities(C++)——枚举(枚举))