C++基础

enum枚举类型的使用

一次定义多個变量

如果要定义一系列递增的常量,使用#define需要一個一個定义,會非常麻烦,使用enum就非常的方便。例如定义一周七天的天数Week。

enum Week {Mon=1, Tue, Wed, Thu, Fri, Sat, Sun};

以上的定义中,Mon的值为1,Tue为2,Wed为3,依此类推。
注意,枚举中的第一项默认值为0

枚举中间项赋值的情况
enum Color {red, blue, green=5, yellow};

以上red到blue是按照默认从0开始递增,green赋值5後,green到yellow就是从5开始递增。
所以,枚举中的每一個未被赋值的项的值都是根据前一项的值递增

限定变量的范围
#include
 
enum Month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec};
 
int main()
{
    enum Month a =  Feb;
    printf("%d",a);
    return 0;
}

以上定义的枚举类型变量a的取值,衹能是枚举Month 12项中的一個,如果赋予其它值,编译器就會报错。

使用enum的幾种方法
  1. 定义enum的同時,声明变量
enum Month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec} a,b;
  1. 定义完enum之後再声明变量
enum Month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec};
enum Month a =  Feb;
  1. 定义匿名枚举变量
enum  {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec} a;
  1. typedef enum定义一個数据类型,那么该类型的变量衹能在enum定义的范围内取值
typedef enum  {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec} Day;
Day a, b;



C++字符串类std::string常用函数

std::string::size() 返回字符串包含的数据长度(占用空间的字节数)
std::string::length() 返回字符串包含的数据长度(同上)

你可能感兴趣的:(C++基础)