类的定义:
是对具有相同属性和行为的一类客观事物的概括描述,是用户自定义的数据类型。
类的定义包括行为属性两个部分。
属性以数据表示,行为通过函数实现。
在类的定义中不能对数据成员进行初始化。

C++定义的格式:
class 类名
{
public:
公有数据成员和成员函数;
protected:
保护数据成员和成员函数;
private:
私有数据成员和成员函数;
};(分号不得省略)
各成员函数的实现;
注意:
1、类名首字母最好大写
2、数据成员私有化,成员函数公有化
类的数据成员可以是其他类的对象,但不能以类自身的对象作为本类的成员,而类自身的指针和引用可以作为类的成员。
3、类定义必须以分号“;”结束

访问控制:
public(公有成员):类的外部接口
protected(保护成员):仅允许本类成员函数及派生类成员函数访问
private(私有成员):仅允许本类成员函数访问

成员函数:
成员函数能够操作的内容:类的数据成员,函数内定义的局部变量
类的成员函数是实现类的行为属性的成员。
定义:
返回值类型 类名::成员函数名(参数表)
{
函数体
}

对象:
对象是类的实例或实体。
格式:
类名 对象名1,对象名2,…,对象名n;
注意:先有数据类型,后有对象
必须在定义了类之后,才可以定义类的对象。

类成员的访问:
对象成员的访问形式:
圆点访问形式:对象名.公有成员
指针访问形式:对象指针变量名->公有成员

函数重载:
函数名相同,但参数不同(类型不同或个数不同)的一组函数。
构造函数是用于创建对象的特殊成员函数。
构造函数一定重载。
构造函数的作用是:为对象分配空间;对数据成员赋初值;请求其他资源。
构造函数可以有任意类型的参数,但是没有返回类型。
析构函数:用于取消对象的成员函数
当一个对象作用结束时,系统自动调用析构函数。
析构函数名为:~类名
默认构造函数:类名::类名(){}
利用构造函数创建对象的方法:
(1)利用构造函数直接创建对象:类名 对象名[(实参表)]
不带参数:当用户没定义构造函数时,调用默认的构造函数;当用户定义了构造函数时,调用无参的构造函数(没有无参的构造函数时要出错,系统不会调用默认构造函数)
带实参表:系统按照重载函数匹配原则,调用对应的构造函数。
注意:
创建对象时一定要按照构造函数定义的方式创建;
创建构造函数时一定要创建不带参数的构造函数
(2)利用构造函数创建对象时,通过指针和new来实现:
类名 *指针=new 类名[(实参表)];
构造函数初始化成员有两种方法:

  • 使用构造函数的函数体进行初始化
  • 使用构造函数的初始化列表进行初始化
    格式:
    funname(参数列表):初始化列表
    {函数体,可以是空函数体}
    初始化列表的形式:
    成员名1(形参名1)成员名2(形参名2),成员名n(形参名n)
    必须使用初始化列表对数据成员进行初始化的几种情况:
    1.数据成员为常亮
    2.数据成员为引用类型
    3.数据成员为没有无参构造函数的类的对象
    按照数据成员在类中的声明顺序进行初始化
    带默认值的构造函数只能在声明时指定默认值

析构函数
析构函数没有返回值,不能有参数,也不能重载
定义格式(类外实现):
类名::~类名()
{
函数语句
}
在一个类中只能有一个析构函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值