Software
全部博文(16)
分类: C/C++
2007-06-22 18:38:31
C++的class有一个我非常喜欢的特殊功能。
那就是它的Constructor和Destructor。
Constructor是class物件(object)创建时自动调用的函数。
Destructor是class物件毁灭时自动调用的函数。
这两个函数是非常有用的功能。
比如,可以在创建class物件或其他初始化(initialization)时,
可以把需要初始化的代码放在这里。
而Destructor呢?
可以在这个物件毁灭时,
清除与释放之前所使用过的资源,
而这些指令不一定是与它class本身有关的。
他可以用来做一些其他初始化与清除的工作。
例如:可以用于打开与初始化某些资源(resource)。
class CAutoComport
{
public:
CAutoComport()
{
OpenComport();
}
~CAutoComport()
{
CloseComport();
}
};
CAutoComport AutoComport; //只要在任何一个module/file里定义,就达到这个自动初始化与关闭的功能。
只要在任何一个module/file里定义(Define)一个变量(variable),
就达到了自动打开串联埠以及关闭的工作。
如果你曾经是用C语言来编程的话,
你就会知道在代码的entry处需要加入OpenComport(),
在终止程序之前需要加入CloseComport()。
而这个class则帮我们省列了这些工作。
这可说是一种技巧,
也可算是懒人的编程,呵...