在C++中,类(Class)是一种用户定义的数据类型,用于封装数据和对数据的操作。类是面向对象编程(OOP)的核心概念之一,允许你将数据和操作数据的方法组合在一起。
定义一个简单的类
|
|
使用类:
|
|
总结
- 类只是对数据和功能组合在一起的一种方法
- 类可以让我们更好的组织代码,更符合语义,使我们的代码看起来更整洁。
- public关键字可以让类中的成员对外可见。一个类的成员默认是private(私有的)
- 类中的函数我们称为方法,类中的变量我们称为属性。
- 类的成员默认是private(私有的),而结构体的成员默认是public(公共的)
- 结构体在C++中继续存在的原因是它希望保持与C语言的兼容性。
- 那么什么时候使用结构体,什么时候使用类呢?
如果你使用POD类型的数据时,就尽可能的使用结构体struct,其他情况下就使用类吧。
什么时POD类型?
就是一种只有简单变量的结构,没有用户定义的构造函数、析构函数和复制赋值操作符,也没有虚函数和虚基类。一般像向量Vector这种就可以用结构体
POD类型的特性
- 内存布局连续且可预测:
POD类型的对象在内存中具有连续的布局,这使得它们非常适合用于与硬件、网络通讯或与C语言库的接口。
- 与C语言兼容
由于POD类型的内存布局与C语言的结构体兼容,因此它们可以在C++和C之间进行无缝的数据交换。
- 可通过内存复制操作进行复制和序列化
POD类型的对象可以通过简单的内存复制操作(如memcpy)进行复制和序列化,这使得它们在处理大量数据时非常高效。说白了就是些简单的数据结构就可以用结构体。