C++基础概念总结(二)-面向对象

面向对象编程基本思想

对象

一张桌子,一只笔都可以作为一个对象,这个对象包含了其属性值和操作,对象的整个结构特征有属性值表示,通过操作改变属性值进而改变对象的状态。

即对象是一个封装了数据和操作的实体。

  类是对象集合的一种抽象,它规定了这些对象的公共属性和方法;对象则是类的一个实例。

  • 继承性:

    可重用性,在定义一个新的对象时,只需将其特有的属性和操作书写出来,其余选择继承前人的劳动成果,可以大大减少工作量和重复定义。

  • 封装性:

    对象的具体数据结构和各种操作的具体细节对调用者是隐藏的,只需调用,无需知道函数的具体细节

  • 多态性:

    C++提供多态的目的是:可以通过基类指针对所有派生类(包括直接派生和间接派生)的成员变量和成员函数进行“全方位”的访问,尤其是成员函数。如果没有多态,我们只能访问成员变量。基类对象可以调用派生类中的函数

    实现同一条语句可以执行不同的操作,即多态,C++中虚函数的唯一用处就是构成多态。

    参考资料:C++多态的概念以及用途(通俗易懂)

类与对象的关系

抽象概念类和具体实体

类=数据 + 操作(函数)

每一个对象都是类的一个实例,各自具有自己的数据值,而数据结构由类统一定义

this指针

指向类本身的一个指针

在Qt中还会见到qApp指针,为应用程序实例化指针,指向程序的全局变量

QcoreApplication::intance();

重载与重写

重写是子类的方法覆盖父类的方法,要求方法名和参数都相同

重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数。

构造与析构函数

分别对应着对象的开始和结束

构造函数与类的名字相同,进行对象的初始化,无返回值,一个类可以无也可有多个参数不同的构造函数

析构函数在对象结束时调用,名字为构造函数前加~

虚函数

C++中用虚函数来支持多态性,参考多态性,函数前加virtual

友元函数

友元函数是可以直接访问类的私有成员的非成员函数。

它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend。调用与一般函数相同。

简单来说,友元函数给关在屋子里私有成员的开了一个后门。可以使类与类实现数据共享。

参考资料:关于C++中的友元函数的总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值