首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

从零学习C++ (六)枚举

2014-01-08 
从0学习C++ (六)枚举#include iostream#include cmath#include string#include cstring/*枚举

从0学习C++ (六)枚举

#include <iostream>;#include <cmath>;#include <string>;#include <cstring>;/*枚举学习*/enum spectrum{red,orange,yellow,green,blue,violet,indigo,ultraviolet};enum bits{one = 1, two = 2,four = 4,eight = 8}; enum bigstep{first,second = 100,third};//只是用常量,而不创建枚举类型的变量enum {zero,null = 0,love,numero_uno = 1};      int main(){        using namespace std;  spectrum band;band = yellow;cout << band << endl; //打印:2band = red;cout << band << endl; //打印 0//++band;   // not valid//band = red + yellow;  // not validint color = blue; //validcout << color << endl;   //打印   4//band = 3;   // invalid;color = red + 3; //validcout << color << endl;   //打印 3band = (spectrum)2;  // validcout << band << endl;  // 打印 2band = (spectrum)2000;   //不适当的值进行类型强转。cout << band << endl;//设置枚举变量的值bits mbits;mbits = one;cout << mbits << endl;  //打印   1bigstep mbigstep;mbigstep = third;cout << mbigstep << endl; // 打印  101int number = zero;cout << number << endl;   //打印 0number = love;cout << number << endl;   //打印  1cout << numero_uno << endl;   //打印  1      /*枚举的取值范围,下面的代码中, 6不是枚举值,但它位于枚举的取值范围内。*/bits myflag;myflag = (bits)6;/*枚举的取值范围,找上限:先找到枚举量的最大值,然后找大于这个最大值得、最小的2的幂,然后减1便是上限。例如  bigstep 中 最大枚举值是101 ,在2的幂中,比这个数大的最小值是 128 所以上限是127找下限:如果枚举量的最小值不小于0, 那下限就是0 否则采用找上限的方法,但加上负号。例如: 如果最小的枚举量是-6 比它小的、最大的2的幂是-8(加上负号),因此下限为 -7*/     }  

热点排行