常量:C++包括两种常量,字面常量和符号常量.

字面常量:指的是直接输入到程序中的值

比如:in myAge=26; myAge是一个int类型变量,而26是一个字面常量。

符号常量:指的是用名称表示的常量,就像变量一样表示,但是一旦初始化,其值就不能改变.

主要指的是:

①const定义的常量:const unsigned short int studentPerClass=15;这里的studentPerClass就是一个符号常量

②使用#include定义的常量:#define studentPerClass 15 这里的studentPerClass也是一个符号变量

枚举常量

枚举常量可以创建一个新类型,然后定义新的类型变量,将这些变量的取值定义为一组可能值。

定义方法:  enum COLOR {RED,BLUE,GREEN,WHITE,YELLOW};

该语句执行后有两个变化:

1)COLOR成为枚举的名称,成为一种新类型

2)如果没有特殊说明,默认枚举中标示符的内容为从0开始递增的整形常数,即RED=0,BLUE=1,GREEN=2,WHITE=3,YELLOW=4

当然也可以自己定义枚举值:

enum COLOR {RED=,BLUE=,GREEN=,WHITE=,YELLOW=};

关于枚举的几点说明:

①枚举值是常量,不是变量。不能在程序中用赋值语句再对它赋值。

②只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。

C++一些基本数据结构:字面常量、符号常量、枚举常量的更多相关文章

  1. 修改mybatis plus Generator模板生成字段注释枚举常量

    修改mybatis plus Generator模板生成字段注释枚举常量 本文基于最新的mybatis-plus 3.0.1版本源码修改,如果使用其它版本,处理方式也类似,主要是生成Entity的Fr ...

  2. 枚举 switch case 标签必须为枚举常量的非限定名称

    枚举 switch case 标签必须为枚举常量的非限定名称 错误描述: Error:(63, 24) 错误: 枚举 switch case 标签必须为枚举常量的非限定名称. 解决思路: switch ...

  3. Java中怎样由枚举常量的ordinal值获得枚举常量对象

    Java1.5提供了关键字enum,能够通过该关键字方便得定义自己须要的枚举类型,比方 enum Season { SPRING, SUMMER, AUTUMN, WINTER } 就定义了一个季节枚 ...

  4. java 的枚举变量只能使用枚举常量来初始化--带有关联数据的枚举

    public enum ResultEnum { SUCCESS("200","成功"), FAILURE("500","发生异常 ...

  5. 【WinAPI】Windows Message 枚举常量收集

    namespace WindowsUtilities { public enum WindowsMessages : int { WM_NULL = 0x0000, WM_CREATE = 0x000 ...

  6. Office.MsoLanguageID枚举常量(采用API函数取出)

    msoLanguageIDAfrikaans (&H436) msoLanguageIDAlbanian (&H41C) msoLanguageIDAmharic (&H45E ...

  7. ShaderLab 枚举常量

        public enum ZTest     {         Always = 0,         Less = 2,         Equal = 3,         LEqual  ...

  8. C++基础内容复习

    下列语句定义了5个变量: int count; double sales_price,sum; std::string title; Sales_item bookItem; 每个定义都是以类型说明符 ...

  9. C#9.0新特性详解系列之六:增强的模式匹配

    自C#7.0以来,模式匹配就作为C#的一项重要的新特性在不断地演化,这个借鉴于其小弟F#的函数式编程的概念,使得C#的本领越来越多,C#9.0就对模式匹配这一功能做了进一步的增强. 为了更为深入和全面 ...

随机推荐

  1. 在word中如何美观地插入代码

    打开这个网站 http://www.planetb.ca/syntax-highlight-word 进去后我们看到下面的界面 中间的空白文本框,可以插入代码,下面可以选择代码种类,最后点击Show ...

  2. 使用FakeAPP进行AI换脸必看!!

    C盘生于容量小于5G的千万别用啊!!笔者本人因为C盘只剩了3G,根本用不上这个,最后会把大小为4G的core文件必须移植到C盘当中,俺的CUDA也白安装了,而且还不小心安装成CUDA8了,应该用9好么 ...

  3. Java Socket聊天室编程(二)之利用socket实现单聊聊天室

    这篇文章主要介绍了Java Socket聊天室编程(二)之利用socket实现单聊聊天室的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在上篇文章Java Socket聊天室编程(一)之 ...

  4. PHP全栈学习笔记17

    phpmyadmin教程 管理页进入phpmyadmin 打开C:\wamp\apps\phpmyadmin3.5.1下的配置文件:config.inc 修改密码 创建与修改数据库.数据表 字段类型 ...

  5. Promise来控制JavaScript的异步执行

    一般来说,js.html都是按照从上至下这种方式来进行执行的.这就造成了,基本上所有的执行过程都是在一个线程中进行. 我们都知道,ajax的使用大大的提高了前后台的沟通效率,那么有没有什么方式,让js ...

  6. Spring Boot 2.x 系列教程:WebFlux 系列教程大纲(一)

    摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! WebFlux 系列教程大纲 一.背景 大家都知道,Sprin ...

  7. 在Xunit中使用FsCheck

    目录 编写基于Property-based的单元测试 使用FsCheck编写Property-based测试 在Xunit中使用FsCheck 使用FsCheck编写Model-based测试-待续 ...

  8. centos7 安装 smplayer

    How to setup multimedia on CentOS 7 You will need to also install the EPEL repository as nux-dextop ...

  9. CentOS 7.4 下 如何部署 AspNetCore 结合 consul

    上篇我们讲到consul的概念,以及在WIN下如何使用:http://www.cnblogs.com/szlblog/p/9162557.html 步骤如下: 1.安装虚拟机VM 2.下载安装 Cen ...

  10. C#工具:加密解密帮助类

    using System; using System.IO; using System.Security.Cryptography; using System.Text; //加密字符串,注意strE ...