zoukankan      html  css  js  c++  java
  • 18)C++对C的增强

    1. 在C++中所有的变量都必须有类型,但是在C语言中没有这个要求,C语言中的默认类型在C++中不合法,
       1 #include<stdio.h>
       2 f()
       3 {
       4     return 10;
       5 }
       6 int main()
       7 {
       8     int a=f();
       9     printf("%d
      ",a);
      10     return 0;
      11 
      12 }
      13 
      14 //上面的代码,在C语言中是可以的,因为函数的默认参数和返回值是int  但是在C++中,就不行。在C++中没有默认的参数和返回值类型。
    2. 而且  我在我的C语言代码中,传参数时,还可以这样(关键看我的那个f函数传参)
       1 #include<stdio.h>
       2 f()
       3 {
       4     return 10;
       5 }
       6 int main()
       7 {
       8     int a=f(10,20);//看,我的函数定义没有参数,但是我在调用时加了参数,居然可以运行
       9     printf("%d
      ",a);
      10     return 0;
      11 
      12 }

       3. 新增了bool类型的关键子

      1. 三目运算符的加强:
        1.  在C语言中 只能作为右值,不能作为左值,除非是指针         
          1 a<b?a:b=50
          2 //上面的就报错
          3 
          4 //下面的就可以
          5 *(a>b?&a:&b) =50
        2. 但是在C++中,三目运算符可以作为左值
          1 (a>b?a:b)=50
          2 //上面的代码在C语言中报错,但是在C++中不会报错
          这个为啥在C++中不报错,是因为返回的是那个变量a的引用

           

       4. const加强

      5.枚举的加强

          --反正有变化,但是具体总结,先不总结了

      

  • 相关阅读:
    Linux--VSFTP服务搭建
    Linux--Smba服务搭建
    Linux--DHCP搭建
    编程语言的分类
    用户,组及权限
    linux常用基本命令整理小结
    数据结构之顺序表实现
    进程管理之system
    进程管理之wait和waitpid
    进程管理之fork函数
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/8178845.html
Copyright © 2011-2022 走看看