语言当中一些经常看到 却又迷糊的修饰符

const是一个C语言的关键字,它限定一个变量不允许被改变。

(详细请见 :http://baike.baidu.com/subview/1065598/5048428.htm,http://blog.csdn.net/eric_jo/article/details/4138548)

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

typedef:现有类型创建同义字,定义易于记忆的类型名  。说白了就是给一个已经存在的数据类型名 起一个新的名字。好听些。

比如孙悟空 在大话西游 叫 至尊宝。

(详细请见 : http://www.cnblogs.com/csyisong/archive/2009/01/09/1372363.html,http://baike.baidu.com/view/1283800.htm

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

#  : 这个符号叫预定义修饰符。 编译器中的预编译器会首先 # 符号修饰的代码

××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

enum:

枚举体
声明枚举体:enum  weekday{sun,mon,tue,wed,thu,fri,sat};
声明了一个枚举类型enum  weekday,可以用此类型来定义变量:enum  weekday  workday,week-end;
workday,week-end  的值只能是列表中的一个(sun-sat)。
说明:1.C编译中,对枚举元素按常理处理,故称枚举常量,不能对它们赋值。
           2.枚举元素作为常量,它们是有值的,默认为0,1,2,3....。枚举元素的值也可在定义时由程序员制定。
           3.枚举值可以用来作判断比较。如:if(workday==mon).....    if(workday>sun)....。一个整数不能直接赋给一个枚举变量。
                           workday=(enum weekday)2;
http://www.weixueyuan.net/view/5824.html
http://blog.csdn.net/masterft/article/details/1671559

×××××××××××××××××××××××××××××××××××××××××××××××××××

union

union  共用体名
{
     成员表列
}变量表列;
特点:1.同一个内存段可以用来存放几种不同类型的成员 ,但在每一瞬间只能存放其中一种,而不是同时存放几种。共用体变量中起作用的是最后一次存放的成员。共用体变量的地址和它各个成员的地址都是同一地址。
            2.不能对共用体变量名赋值,不能引用变量名来得到一个值,不能在定义共用体变量时对它初始化。
            3.不能把共用体变量作为函数参数,也不能是函数带回共用体变量,但可以使用共用体变量的指针。(与结构体变量这种用法相仿)。
            4.共用体类型可以出现在结构体类型定义中,也可以定义共用体数组。反之,结构体也可以出现在共用体中,数组也可以作为共用体的成员。


其实说了这么多  我开始不明白了 MFC 这句代码是什么意思?   


我猜测是 定义了一个枚举型数据,这个枚举型数据里有一个成员 IDD ,并且给这个赋值IDD_ABOUTBOX (这个值被用预编译为整数100)

但是我们不明白,定义了这个枚举数据 为啥没有写变量名字?


原文地址:https://www.cnblogs.com/wenluderen/p/4246613.html