C++学习思维导图

核心要点总结:

1. C语言与C++中struct的区别
  • 名称不同
    • C语言:称为“结构体”,仅用于封装数据。
    • C++:称为“类”,支持成员函数和访问控制。
  • 数据成员范围
    • C语言:只能包含栈空间变量。
    • C++:可包含栈空间变量、静态存储区变量、成员函数。
  • 访问权限
    • C语言:无访问控制。
    • C++:支持publicprotectedprivate三种权限。
2. C++中的类
  • classstruct的区别
    • struct默认所有成员为public
    • class默认所有成员为private
  • 规范建议
    • 成员变量应设为私有,成员函数应设为公有。
3. 构造函数
  • 特点
    • 对象创建时自动调用,无返回值,函数名与类名相同。
    • 若未手动定义,编译器生成默认无参构造函数。
  • 调用形式
    • 显式调用:Stu zs;Stu zs(参数);
    • 隐式调用:Stu zs = 100;Stu zs = {参数};
  • 隐式调用限制
    • 使用explicit关键字禁止隐式转换(如explicit Stu(int _score);)。
  • 列表初始化
    • 在构造函数后通过: 成员变量(值)初始化,尤其用于引用成员。
4. 接口
  • 作用
    • 提供外部访问私有成员的通道。
  • 分类
    • set接口:修改私有成员。
    • get接口:获取私有成员。
5. this指针
  • 本质
    • 成员函数调用时隐式传入的指针,指向当前对象(类型为类名* const)。
  • const成员函数
    • 使用const修饰(如int getScore() const;),使this变为const 类名*,禁止修改成员变量。
6. 析构函数
  • 特点
    • 对象生命周期结束时自动调用,函数名为~类名()
    • 手动调用析构函数不会跳过自动调用,需谨慎使用。
  • 用途
    • 释放资源(如关闭文件、释放内存)。
7. 关键注意事项
  • 类中的引用成员
    • 必须在构造函数的列表初始化中初始化。
  • 指针成员的get接口
    • 返回值应为const 类型*,防止外部直接修改私有数据。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值