类(class)
在 C++ 中,类是一种 数据类型 。
描述:
客观事物是复杂的,要描述它必须从多方面来进行。
也就是用不同的数据类型来描述不同的方面。举例:商场中的商品
商品名称:用字符串描述;
商品数量:用整型数据描述;
商品单价:用浮点数描述;
商品总价:用浮点数描述;
示例代码:
class CGoods
{
public:
char Name[21];//注释1
int Amount;
float Price;
float Total_value;
public:
void RegisterGoods(char[], int, float); //输入数据
void CountTotal(void); //计算商品总价值
void GetName(char[]); //读取商品名
int GetAmount(void); //读取商品数量
float GetPrice(void); //读取商品单价
float GetTotal_value(void); //读取商品总价值
};//注释2
注释:
- 关键字 class 是 数据类型说明符 ,指出了下面说明的是类;
- 标识符 CGoods 是商品这个类的 类型名 ;
- 花括号中是一系列成员,包括 属性(数据) 和 操作(函数) ;
- 关键字 public 是 访问限定符 ;
- 该代码中只对成员函数作了一个声明(函数的原型),并没有定义;
- 1:其中的商品名,如果是中文,则可以使用:
wchar_t Name[11]
; - 2:最后的分号是不可少的,是一条说明语句。
对象(object)
对象是类的 实例(instance) 。
描述:
声明一种数据类型只是告诉编译系统该数据类型的构造,并没有预定内存;
类只是一个样板,
以此样板可以在内存中开辟出同样结构的实例–对象;
对象是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现。
创建类的对象可以有两种常用方法:
直接定义:
CGoods Car;
≈int x;
这个定义创建了 CGoods 类的一个对象 Car ,同时为它分配了属于它自己的存储块,用来存放数据和对这些数据实施操作的成员函数(代码);
对象只在定义它的域中有效。动态创建:
所谓动态创建是指在程序运行时建立对象;
而直接定义则是在编译时(程序运行前)建立;
具体实现我们后面单独来谈;