专业编程基础技术教程

网站首页 > 基础教程 正文

C++的期末考试莫慌,知识点都在这篇笔记内!类和对象

ccvgpt 2025-03-29 15:39:26 基础教程 14 ℃


类与对象:

C++的期末考试莫慌,知识点都在这篇笔记内!类和对象

类是用户声明的一种抽象的数据类型。

对象是类的一个实例。

在C++中可以用两种方法定义对象:

(1) 在声明类的同时,直接定义对象,即在声明类的右花括号,“}”后,直接写出属于该类的对象名表。这时定义的对象是一个全局对象。

(2)声明了类之后,在使用时再定义对象。这时定义的对象是一个局部对象,建议使用这种方法来定义对象。

类成员的访问权限

  • 按访问权限划分,数据成员和成员函数可分为3种,分别是公有数据成员与成员函数、保护公有数据成员与成员函数,以及私有数据成员与成员函数。
  • 一般情况下,一个类的数据成员应该声明为私有成员(或保护成员),这样,使数据得到有效的保护;成员函数声明为公有成员,是类与外界的接口。

构造函数与析构函数

(1) 构造函数。

  • 构造函数是一种特殊的成员函数,它主要用于为对象分配空间,进行初始化。构造函数不能像其他成员函数那样被显式地调用,它是在定义对象的同时被调用的。
  • 在实际应用中,如果没有给类定义构造函数,则编译系统自动地生成一个缺省的构造函数。
  • 在C++中有多种构造函数,如缺省参数的构造函数、拷贝构造函数、缺省的构造函数等,它们有不同的特点和用途。

(2) 析构函数。

  • 析构函数也是一种特殊的成员函数。
  • 它执行与构造函数相反的操作,通常用于撤销对象时的一些清理任务,如释放分配给对象的内存空间等。
  • 析构函数同构造函数一样,也是类的一个特殊成员函数,其函数名称是在类名的前面加上“~“。
  • 析构函数没有返回值和参数,不能随意调用,也没有重载,只是在类对象生存期结束时,系统自动调用。


浅拷贝与深拷贝

  • 所谓浅拷贝,就是由缺省的拷贝构造函数所实现的数据成员逐一赋值。
  • 若类中含有指针类型的数据,这种方法将会产生错误。
  • 为了解决浅拷贝出现的错误,必须显式地定义一个自己的拷贝构造函数,使之不但拷贝数据成员,而且为对象分配各自的内存空间,这就是所谓的深拷贝。


类图的UML表示

  • 随着应用系统的面向对象分析与设计的建模表示方法和建模过程方法的不断丰富和完善,UML称为进行面向对象系统建模的业界标准。
  • 在系统分析和设计时,UML作用非常重要,其中的类图具有充分强大的表达能力和丰富的语义,是建模时非常重要的一个图。

#科技萌新成长营#

最近发表
标签列表