类设计
第一步
指定类设计的第一步是提供类声明,类声明相当于结构体声明。声明里可包括数据成员和函数成员。声明中包括私有部分(private)和公有部分(pubilc)。私有部分的成员只能被声明中的成员函数来访问,外部函数不能访问。公有部分的成员可以被使用类对象的程序直接访问。
通常数据成员放在私有部分,函数成员放在公有部分。典型的声明格式如下:
class S
{
private:
int a;
public:
void fun(int a);
}
公有部分的内容设计成了抽象部分——公共接口。将数据封装到私有部分,保证了数据的隐匿性。
第二步
指定类设计的第二步是实现类成员函数。类成员函数的实现当然可以直接在类声明中直接编写函数的完整内容,而不是只提供函数定义,这种情况适合短小的函数。但是如果遇到比较长的成员函数,我们最好在类声明外具体编写成员函数实现内容。
这种情况下,我们需要用到作用域解析运算符(::)来确定函数属于哪个类。
假如有一个类是S,S中有个void类型的成员函数fun,那么在编写函数实现的时候就是
void S::fun(int a)
{
}
换句话说,fun是S类中的一个void函数,该函数的全名是S::fun,fun只是它的缩写。
第三步
类的使用。创建类的对象,把类名看做类型名使用。
S use;
类就是用户自定义的类型,类成员函数可以通过对象来调用,调用的时候需要用到(.)运算符。
use.fun(1);