C++——四天掌握C++(第一天,C++基础,特点)

C++

  1. 更加严格的编程规范

  2. 面向对象的编程思维

C++新增特性

  1. 面向对象 类 

  2. 继承、多态、虚函数、构造、友元、重载

  3. 引用

  4. 模板STL

  5. 异常

C和C++的区别

  1. c++不允许出现多个 同名的全局变量

  2. 里面 const修饰的变量是可以通过指针去修改的,c++不能修改

  3. c语言里面 int*p = NULL  c++ ( nullptr )

  4. 引用

    1. 数据类型+&+变量名

    2. 取别名

    3. 函数的传参,函数的返回值

  5. 函数重载

    • 函数名一样,参数的个数或者类型不一样

  6. 默认参数

    1. 默认参数只能从右边开始设置

    2. 传参是从 左边开始赋值

    3. 注意~~~~默认参数和函数重载可能会有歧义

  7. 输入输出

    1. <iostream>
    2. cout 输出
    3. cin 输入
  8. 强制转换(类型)变量名

    1. eg: (inta  类型(变量名) eg inta);

  9. 内联函数

    1. 关键字 inline

    2. 要求:代码简单(5个语句), 不能有循环swich这样的语句

    3. 直接编译到主函数,不需要函数的跳转,要求函数的声明和定义都写在头文件

  10. 结构体

    1. c++结构体可以有函数,并且拥有this指针,还有三个权限 public private protected
  11. 名词空间

    1. 局部

    2. 全局

    3. 名词空间 ::

    4. 类域 ::

  12. 堆区空间开辟

    1. c malloc free 函数
    2. c++ new delete 关键字
    3. eg new int[n] , delete []p

类和对象

  • 对一类事物的抽象
  • 属性(成员变量),行为(成员函数)

对象

  • 抽象类的实列化

oop思想

  • 抽象         封装         分类         继承         多态

构造函数

  • 对象生成的时候自动调用
  • 名字和类名同名

默认构造(普通构造)

拷贝构造

  • 浅拷贝
  • 深拷贝

移动构造

  • -fno-elide-constructors 防止编译器优化 允许产生临时变量

析构函数

  • 对象消亡自动调用

创建一个类系统会默认生成一些东西

  • 默认构造,拷贝构造,析构,赋值符号,取地址符号

const

  • const成员需要使用初始化列表进行初始化
  • const成员函数,const修饰的成员函数不能存在修改成员变量的逻辑(包括引用返回)
  • 非const函数可以调用const函数,const函数不能调用非const函数

static

  • static修饰成员变量,不属于类,必须初始化
  • static修饰的成员函数,没有对象存在也能调用,
  • static修饰的成员函数,不能调用非static的成员函数,也不能访问非static的变量
  • 非static修饰的成员函数,可以调用static修饰的成员函数,也可以访问static修饰的变量
  • 所有对象共享一个static修饰的变量

友元函数

  • 缺点 破坏了封装,不安全,所以要慎用
  • 优点:
    1. 效率高,一般是需要频繁访问类的成员变量时使用
    2. 全局函数作为类的友元函数一个类作为另外一个类的友元类
    3. 一个类的成员函数作为另外一个类的友元函数

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值