C++学习心得记录(浙大翁恺

DAY 1

重要概念

OOP(object-oriented programming):对象=数据+操作。万物都是对象,对象内部还是对象。对象与对象之间通过接口传递消息(操作函数),内部变量表示状态。封装/继承/多态

类(object)vs对象(object):物以类聚

头文件

注意定义definition与声明declaration的区别。

.h:仅包含声明

  1. 类、结构体的声明
  2. 函数原型声明
  3. extern variables 变量声明

"xxx.h"当前.cpp文件目录下寻找.h文件//<xxx.h>系统目录下寻找.h文件

.cpp:函数的body,定义

DAY 2

成员变量fields/本地变量local variables/参数变量parameters

类是抽象的概念,是表象。因此,类的声明只是告诉编译环境有这个class有这些成员,这些成员并没有被创建。只有当这个类的对象存在时,成员变量才真正存在。对象是实体的概念。

成员数据是属于每个创建的对象的。而,成员函数是属于class的,是公共的,每一个该class的对象,都可以使用成员函数进行操作。

this指针:当对象a调用类的函数时,为什么函数会对a的数据进行操作而不是其他对象的数据,是因为this指针。

学习C++,要积极思考这些原理如何用C语言实现。

构造函数constructor:创建对象的本质是调用构造函数,可以有参数

析构函数destructor:没有参数

访问限制

private:只有该类的函数可以访问。同一个类的不同对象之间,可以互相访问private属性成员。

protected:只有该类的子类可以访问。主函数不可以

DAY 3

初始化/组合与继承

在构造函数中,使用初始化列表initialized list去初始化类的成员,而不采用赋值的形式。

软件重用、代码重用:在C++中,除了继承可以实现,还有对象组合composition

对象组合有两种形式,一是fully:该class的成员有别的class的对象;二是by reference,用指针的形式。

构造函数不能主动调用。在创建子类对象的时候,会创建一个父类的对象。换句话说,父类包含于子类,此时就要注意父类对象的初始化(构造函数带不带参数)。

  • 当子类与父类定义了相同的函数时,且父类中这个函数有重载函数,此时子类的函数会替代父类的这个函数。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值