《C++ Primer》第十二章学习笔记:类的定义

12.1 类的定义与申明
类是C++最重要的特征。

简单来说,类就是定义了一个新的类型和一个新的作用域。

12.1.1 类定义

1.类成员

可以是数据、函数或函数别名。

2.构造函数 

3.成员函数

在类内部定义的函数默认为inline。

将关键字const加在形参表之后,就可以将成员函数申明为常量const成员不能改变其所操作的对象的数据成员。const必须同时出现在申明和定义中,若只出现在一处,就会出现编译错误。


12.1.2 数据抽象与封装

类背后蕴涵的基本思想是数据抽象与封装。

数据抽象是一种依赖于接口和实现分离的编程技术。

封装是一项将低层次的元素组合起来形成新的、高层次实体的技术。

数据抽象和封装的好处:

1、避免类内部出现无意的、可能破坏对象状态的用户级错误。

2、随时间推移可以根据需要改变或缺陷(bug)报告来完善类实现,而无需改变用户级代码。


12.1.3 关于类定义的更多内容

1、同一类型的多个数据成员

2、使用类型别名来简化类

3、成员函数可以被重载

4、定义重载函数

5、显式指定inline成员函数

可以在类定义体内部指定一个成员为inline,作为申明的一部分。或者,也可以在类定义体外部的函数定义上指定inline。

在申明和定义处指定inline都是合法的。在类的外部定义inline的一个好处是使得类比较容易阅读。


12.1.4 类申明和类定义


12.1.5 类对象

定义一个类时,也就定义了一个类型。一旦定义了类,就可以定义该类型的对象。定义对象时,将为其分配存储空间,但(一般而言)定义类型时不进行存储分配。

为什么类的定义以分号结束?

类的定义以分号结束。分号是必须的,是因为在类定义之后可以接一个对象定义列表。

class Sales_item{/*. . .*/};
class Sales_item{/*. . .*/} accum, trans;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值