1.其实C++中的bool类型,是通过枚举来实现的:
如:
enum BOOL
{
FALSE,TRUE
};
所以在C语言中完全也可以用这种方式来实现
2.关于枚举类型,
enum DAY {Mon,Tues,Wed};
a.C语言中定义枚举类型必须通过enum DAY time,如果没有enum会报错
b.而C++中用DAY time 就可以了
还有另外一个区别:
a.C语言中可以对time=100赋值
b.但是C++中对time=100赋值会报错
还有另外一个想说的是,如果有一下定义:
enum
{
Mon,Tues,Wed
}
这个其实等价于 #define Mon 0 #define Tues 1,所以说有的时候也用枚举来充当宏定义
3.在C 和C++中表达式可不可以为左值
请看:a=10,b=5;(a=b)=100;
a.在C语言中会报错,由于C语言中左值不能是表达式
b.但是在C++中,这个是对的,并且最后a=100,b=5.