【C++】面向对象的思想和类的认识
(一)面向对象的思想
(二)类的认识
- 类是一组相关的属性(变量)和行为(方法)的集合。是一个抽象概念设计的产物;
- 对象是该类事物的具体表现形式。现实世界存在对应的实体;
- 成员变量是对象的属性(变量、指针、数组等),属性的值确定对象的状态;
- 成员函数是对象的方法,确定对象的行为;
- 变量的值确定了对象的状态;
- 通过对象的方法可以改变对象的状态;
(三)类的设计
在C++中类是一种数据类型;
1 | class 类名 //类 头 |
注意:
- 类是一种数据类型,在设计时,不分配存储空间,所以不能对数据成员初始化。类中的属性也不能使用关键字extern、auto、register等限定其存储类型;
- 类中默认权限private(私有),其中类的权限体现封装性;
(四)C++对象模型
通过同一个类实例化的对象,这些对象只有属性的值不同,每个对象的成员方法都是相同的。所以同一类的对象,每个对象分配单独的数据区,成员方法存放在代码区为每个对象共用。
下面我们设计人类进行举例:
1 |
|
对象模型如下:
(五)总结
- 有空间,不一定有对象
- 有对象,一定有空间(空类型的对象占用1字节的大小)
- 类也遵守结构体内存对齐的规则
下节:讲解C++对象模型的实现方式(this指针实现)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 code-016!