#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; //打印:2
band = red;
cout << band << endl; //打印 0
//++band; // not valid
//band = red + yellow; // not valid
int color = blue; //valid
cout << color << endl; //打印 4
//band = 3; // invalid;
color = red + 3; //valid
cout << color << endl; //打印 3
band = (spectrum)2; // valid
cout << band << endl; // 打印 2
band = (spectrum)2000; //不适当的值进行类型强转。
cout << band << endl;
//设置枚举变量的值
bits mbits;
mbits = one;
cout << mbits << endl; //打印 1
bigstep mbigstep;
mbigstep = third;
cout << mbigstep << endl; // 打印 101
int number = zero;
cout << number << endl; //打印 0
number = love;
cout << number << endl; //打印 1
cout << numero_uno << endl; //打印 1
/*
枚举的取值范围,
下面的代码中, 6不是枚举值,但它位于枚举的取值范围内。
*/
bits myflag;
myflag = (bits)6;
/*
枚举的取值范围,
找上限:先找到枚举量的最大值,然后找大于这个最大值得、最小的2的幂,然后减1便是上限。
例如 bigstep 中 最大枚举值是101 ,在2的幂中,比这个数大的最小值是 128 所以上限是127
找下限:如果枚举量的最小值不小于0, 那下限就是0 否则采用找上限的方法,但加上负号。
例如: 如果最小的枚举量是-6 比它小的、最大的2的幂是-8(加上负号),因此下限为 -7
*/
}
分享到:
相关推荐
在C++编程中,"检测托盘图标"和"枚举进程"是两个重要的系统级操作,主要用于管理和监控系统的运行状态。以下是对这两个知识点的详细解释: 首先,托盘图标,也称为系统托盘或通知区域图标,是Windows操作系统桌面右...
信奥赛C++:枚举算法的算法思想,适合准备或正在学习C++语法和算法的人员,让学习者知晓枚举算法的算法思想及使用场景,让学习者知晓并掌握枚举算法在什么时候使用以及如何使用。
这是我用c++语言编写的一个类,主要封装了排列、组合、整数分划、枚举、N皇后等常见问题的解决方法,分为两个...希望能对学习c++语言的朋友有所帮助。在使用中,如果发现错误和可以改进的地方,请联系QQ:1341213535。
总的来说,这个资源为C++开发者提供了一个深入了解注册表操作的实践案例,同时也能学习到如何利用Windows API进行进程枚举。通过分析和运行这些程序,开发者不仅可以提升他们的编程技能,还能增强对系统级编程的理解...
在Windows操作系统中,枚举窗口是一项重要的编程技术,主要用于遍历和操作系统中所有或特定类别的窗口。...通过阅读和理解这段代码,开发者可以学习如何在自己的程序中实现枚举窗口和子窗口的功能。
总的来说,这个项目为学习C++系统编程提供了很好的实践案例,涵盖了系统信息获取、进程和服务管理、网络通信和文件监控等多个关键领域。对于想要深入理解Windows系统编程的开发者来说,这是一个非常有价值的资源。
学习C++通常从"Hello, World!"程序开始,它涉及输出语句(如`std::cout`)和#include指令。`std::`是标准命名空间的标识,iostream库用于输入输出操作,与旧的iostream.h头文件相比,它遵循了更现代的命名规则。重名...
2. main函数:每个C++程序都从main函数开始执行,它是程序的入口点。 3. 输入输出:标准输入输出流(cin和cout)用于从键盘接收数据和向屏幕输出信息。iostream库提供了这些功能。 三、面向对象编程 1. 类与对象:...
"VC枚举串口(串口名)"这个标题指的是利用VC++(Visual C++)来查找并列举系统中可用的串行端口名称。在描述中提到的"EnumSerial"是一个自定义类,它被用来实现串口的枚举功能,能够识别虚拟串口并且能够在串口号超过...
在"USB.rar_C++枚举USB_USB 枚举_usb packet_usb 包"这个压缩包中,我们主要探讨的是USB协议的枚举过程、数据包分析以及USB标准描述符这三个关键领域。 首先,USB的**枚举过程**是设备连接到主机后的初始化阶段。在...
这些笔记涵盖了C++编程的基础,是学习C++语言的重要参考资料。理解并掌握这些知识点,可以帮助初学者避免常见的陷阱,写出更有效、更可读的C++代码。随着深入学习,还将涉及到类、对象、模板、异常处理、输入输出流...
下面将从几个方面分享学习心得与重要知识点。 #### 1. 编译器与编译指令 - **命令行编译**:在命令行环境下使用编译器(例如 `cl`)来编译源代码文件(如 `1.cpp`),生成可执行文件。例如: ```bash F:\VC\...
在VC++编程环境中,枚举进程模块是一项重要的技术,它涉及到操作系统级别的进程管理和系统调试。本文将深入探讨如何使用...通过学习和实践这一技术,开发者可以更好地理解和控制系统的运行状态,提高问题排查的效率。
C++ Builder是一款集成开发环境,特别适合用于创建Windows桌面应用程序。在C++ Builder中学习和使用...在学习C++ Builder时,了解如何与Windows API交互是很有价值的,它可以帮助你更好地理解和扩展C++ Builder的功能。
9. **C++11及其更新**:书中可能涵盖C++11标准引入的新特性,如lambda表达式、右值引用、auto关键字、强类型枚举等,以及后续标准C++14、C++17、C++20中的新功能。 10. **实践项目**:为了巩固理论知识,书中可能...
在IT领域,尤其是在多媒体开发中,枚举系统的视音频采集设备是一项重要的任务。这涉及到能够识别和访问系统中可用的摄像头、麦克风等...同时,这也是一个学习DirectShow和C++编程的好机会,因为实践中总是能学到更多。
C++枚举类型enum与enum class的使用 以下是C++枚举类型enum与enum class...C++枚举类型enum与enum class的使用是非常重要的知识点,它们之间的区别和使用方法都需要我们认真学习和掌握,以便更好地应用于实际开发中。
综上所述,《Beginning C++17: From Novice to Professional》不仅是一本适合初学者入门的经典教材,同时也为有一定基础的开发者提供了深入学习C++17新特性的宝贵资源。通过本书的学习,读者能够全面了解C++17的核心...