C++再学习(很乱)

研究这个世界离不开物质,研究程序离不开内存
全篇的主线——内存的组织

设计的是软件,不再是一个算法或一个功能函数。
(而非面向过程)面向对象设计:抽象、封装、继承、多态

一个对象的成员主要包括两种
状态:数据、变量、属性
行为:方法、函数、操作

结构

模块 类 自定义类型
访问接口 对象 变量

类(对象的抽象)

private 仅仅允许本类成员函数访问
public 暴露成员,一般暴露函数作为操作private成员的外部接口
protected 类似于private,但区别是继承后在派生类

对象

类名 对象名.公有成员

对象初始化:构造函数
对象清理:析构函数(与类同名、无返回值、一定是公有)

常数据成员(const)初始化,只能通过初始化列表

派生-继承(UML类图描述)

父类与子类之间的

1--派生(子类化)-->2
|(实例化)
成员、静态

类A继承类B(类B派生类A)

class A:public B
{}
override 同名覆盖 基类成员
overload 同名不同参 重载

构造函数->派生类名::派生类名(基类所需形参,本类成员形参):
基类1(基类参数列表1),…(){}

派生类->基类(转换):基类A;派生B;A=B;//A即得到B中基类部分,称之为“对象截断”

类之间的

多继承的代替方法
类的组合,类内嵌其他类的对象
构造:初始化列表 类名::(形参):内嵌对象名(形参),…(){}

类的作用域

类的作用域 (this)
类内函数对本类其他成员有无限制的访问权(修改还需要写在函数里)

static 静态成员,类内所有对象共同维护(变量、函数,无需对象的“前缀”,需要类名+作用域限定符)

将外部(类、类函数、非类函数)声明为本类友元。

编译

带有默认参数的inline 内联成员

(类)对象{成员函数、数据成员(变量、引用、指针)}

灵活可复用:继承·多态性(联编(绑定))
动态联编(运行多态(表现形式为虚函数))
静态联编(重载多态、模板多态)

多文件 作用域·生存周期
禁止修改 const

函数(同名重载(参数需要不同)、模板)-->结构化程序设计
{
基础数据类型 数组
表达式 符号
(使用控制语句连接在一起)
}

class(xxx.h、xxx.cpp) 声明、定义、实现、操作
extern

抽象类-用基类指针范文派生函数(避免继承后仍可以访问基类)虚函数-(无函数体)纯虚函数
基类-派生类-多继承(成员().基类的构造)
类的组合
类的构造·析构
类的静态成员

执行

执行实质上是(定位+顺序),一段复制,安排好的内存格式

自定义结构·指针·引用【内存结构安排·寻找】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超自然祈祷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值