c++对c增强

c++对c增强

  • 1 变量随用随定义
  • 2 c++语言对全局变量的检测能力增强(检测全局变量重定义)
  • 3 struct类型增加
  • 4 函数的增强,c++中的函数必须有返回类型,函数参数个数必须一致
  • 5 bool类型增强
  • 6 三目运算符增强
    c语言中三目运算符返回的是数值,三目运算符做左值,要用地址例如*(a<b?&a:&b)=50; c++中三目运算符可以当左值,实际上返回的是变量的引用,可以(a<b?a:b)=50;
  • 7 const增强
    c语言中可以通过指针操作改变const变量的值。 c++的const变量是真正的常量,例如
    const int a = 10;并没有在栈开辟区域,而是在常量区有一个符号表,存放键值对。对a取地址时,相当于对常量10取地址,此时,编译器会临时开辟一个空间temp,让这个指针存放这个临时空间的地址
  • 7.1 #define a 20 预处理阶段, 作用域全局
    const int a = 20; 编译阶段, 有作用域
  • 8 枚举增强
    c语言中:
enum season
{
    SPR = 0, //默认为0
    SUM,
    AUT,
    WIN
};
void test()
{
    enum season s = 2;
    if(s == 2)
    {
        cout << s << endl;
    }
}
当成员太多时,例如有10000个,当if(s == 10000)时,难以理解,含义不清(一般每隔10个作为分割,帮助识别)
c++中使用enum season s = 2出错,只能enum season s = AUT;

猜你喜欢

转载自blog.csdn.net/foreverdongjian/article/details/81017266