|
5.1.2 CImgEnhance类的构造函数和析构函数
类的构造函数和析构函数是用来完成成员变量初始化并释放资源的。以下是该类构造函数和析构函数的代码实现及解释。
/***************************************** ****************************** * 函数名称: * CImgEnhance() * * 说明:无参数的构造函数,对成员变量进行初始化 ****************************************** *****************************/ CImgEnhance::CImgEnhance() {
m_nColorTableLengthOut=0; m_nBitCountOut=0; m_pImgDataOut=NULL; m_lpColorTableOut=NULL;
} /****************************************** ***************************** * 函数名称: * CImgEnhance() * * 函数参数: * CSize size-图像大小(宽、高) * int nBitCount-每像素所占位数 * LPRGBQUAD lpColorTable-颜色表指针 * unsigned char *pImgData-位图数据指针 * * 返回值: * 无 * * 说明:本函数为带参数的构造函数,给定位图的大小、 每像素位数、颜色表 * 及位图数据,调用ImgCenterDib()对基类 成员初始化,并初始化派生类的 * 数据成员 ***************************************** ******************************/ CImgEnhance::CImgEnhance(CSize size, int nBitCount, LPRGBQUAD lpColorTable, unsigned char *pImgData): ImgCenterDib(size, nBitCount, lpColorTable, pImgData) {
m_nBitCountOut=0; m_pImgDataOut=NULL; m_lpColorTableOut=NULL; m_nColorTableLengthOut=0; } /****************************************** ***************************** * 函数名称: * ~ CImgEnhance() * * 说明:析构函数,释放资源 ************************************** *********************************/ CImgEnhance::~CImgEnhance() { if(m_pImgDataOut!=NULL){ delete []m_pImgDataOut; m_pImgDataOut=NULL; } if(m_lpColorTableOut==NULL){ delete []m_lpColorTableOut; m_lpColorTableOut=NULL; } } | 我们将“ImgEnhance.h”头文件包含进“demoView.cpp”文件中,在菜单条上加入“图像增强”菜单如图5-1所示,在每个菜单项上映射相应的事件处理函数,并调用CImgEnhance类中相应的函数,完成图像的增强处理。CImgEnhance类中各成员函数将在后面几节中依次介绍。
|
|
图5-1 “图像
增强”菜单 |
【责任编辑: 夏书 TEL:(010)68476606】
|