个人认为有序的代码组织结构,将有助于代码的阅读、理解、维护,故提出以下的基本原则:
1. 在类定义里,只对成员函数进行声明;成员函数的实现,应该放置到cpp文件中。
-- 虽然C++规范允许在类定义中直接书写成员函数的实现,但我仍然认为这是一种很糟糕的做法,在VC6.0中常常引起调试器异常,新版本是否有此问题尚不清楚。
-- 头文件是对一个类的概要性描述,简捷、明了才好。即便一个成员函数的实现非常简单,仍然会干扰对类定义的阅读。
2. 在类定义中声明类成员函数的顺序,在cpp文件中定义类成员函数的顺序,这两种顺序应该保持一致性。
3. 在类定义中声明类成员的顺序,应该符合如下的顺序
1)首先,定义类空间中的“类型定义”、“常量定义”;
2)其次,声明“静态成员函数”;
3)其次,声明“构造函数”、“析构函数”以及其他基本函数如“拷贝函数”等;
4)其次,声明“对象操作函数”,如“对象初始化函数”;
5)其次,声明“对象属性查询函数”;
6)其次,声明“对象状态查询函数”;
7)其次,声明“私有成员函数”;
8)最后,声明“成员变量”;
以上只是一个大慨的分类,具体情况具体对待,总的原则就是保证类结构的清晰性。