当前位置:C++技术网 > 资讯 > 完美记事项目:4 功能模块封装说明

完美记事项目:4 功能模块封装说明

更新时间:2015-06-26 12:32:11浏览次数:1+次

    我们就添加一个类作为一个独立的功能模块。右击类视图的项目名,添加类,选择的是C++类,输入类名,不要基类,完成即可。然后类向导会自动生成一个类。此类包含一个类头文件和一个源文件。头文件中有基本的类声明,源文件中有构造函数和析构函数的实现函数,不过都是空的。
    根据完美记事项目约定,每个功能模块中,都要有一个私有的派生的富文本框成员指针,取名为m_pRichEdit。类型就是wmRichText。在文章《完美记事之CRichEditCtrl控件类重载》中详细说明了此富文本控件类的重载以及详细说明,创建功能模块前一定要看这篇文章。
    在头文件中,写清楚开发者信息、创建时间、修改时间、功能列表。因为要对公共的富文本框进行操作,所以功能模块需要得到富文本框的指针,以便操作富文本框。而功能模块加载时,在构造函数中,传入富文本框的指针,对功能模块的成员变量m_pRichEdit赋值。在构造函数中,使用一个断言,表明此指针在调用功能模块时一定是不为空的,如果为空,则启动断言崩溃,便于调试。此断言在编译Release版本时,不会被编译到EXE去。然后其他的功能模块的函数,则以开发者的真实名字的拼音首字母小写取名。至于其他取名规范,参照相关规范说明。

    以排版功能模块为例(我负责的其中一个模块),给出参考规范写法,其他模块都以此规范来写。


    类声明(头文件)如下:
/* - 开发者:codexia - */
/* 
- 创建日期时间:2015年1月30日
- 修改日期时间:2015年1月30日
*/
/*  功能列表
- 文字排版:字间距
- 行间排版:行间距
- 段落排版:段落间距、段落缩进、项目符号、
- 整体排版:左对齐、居中对齐、右对齐、两端对齐
- 标题格式:一系列标题样式
*/

#pragma once
#include "wmRichText.h"
class wmWordLayout
{
public:
    wmWordLayout(wmRichText * pRT);
    ~wmWordLayout(void);
private:
    wmRichText * m_pRichEdit;// - 全局富文本框控件,用于控制公共富文本框
};
说明:
1.扩展的功能函数,以子功能分组,写好注释。
2.功能模块的成员变量基本是以私有形态出现,变量命名也要参考相关的规范说明。 


     类实现(源文件)如下:
#include "StdAfx.h"
#include "wmWordLayout.h"

wmWordLayout::wmWordLayout(wmRichText * pRT)
{
    ASSERT(pRT!=NULL);// - 如果传入的指针为空,则断言失败
    m_pRichEdit = pRT;// - 给全局指针设置传入的公有富文本框指针
}

wmWordLayout::~wmWordLayout(void)
{
}
说明:
1.这里给出的是所有功能模块都要使用的规范,包括构造函数中的参数名写法,构造函数基本一样。
2.函数实现也按照在头文件的顺序排列,便于日后查找。 

    以上是对功能模块的基本框架定义规范说明。整个完美记事项目的各种规范都以一个标准规范执行,在完美记事开发组QQ群中有相关的资料。规范也是大家慢慢发现和形成的。一个好的规范可以让开发效率和沟通效率大大提高,这是大项目最基本也是最重要的注意事项。很多公司招人还看代码风格,如果代码不规范,代表代码质量也不会好。希望参与此项目开发的所有开发人员都养成一个好的规范风格,受益终身。