|
你可以通过对源代码的一些全局常量进行修改来使vcextend更适合你的习惯或开发组的规范。源代码中已对这些全局常量加了注释,很容易理解的,这里只对其中的几个可选项加一些说明。 hppdir = "" ’ "hpp" ’hpp文件的存储目录,如果不为"",一定要加 一个工程里文件较多时可能要分目录存储,修改上面的存储目录即可实现分目录存储。如果定义了存储目录,一定要在工程目录下建立这些目录,如果忘了,就会产生第三节所说的内存错误。如果把inldir设为等于hppdir,inl文件就会和.h文件放在一起。 关于目录,还有一点要说明的。生成新类的时候,有一个目录选项,所填目录不包括上述的存储目录的部份。比如hppdir="hpp",cppdir="cpp", inldir=hppdir,生成新类时加了目录名@views,那么cpp文件会存到cppviews目录下,而hpp和inl文件会存到hppviews目录下。并且,一定要先建好views目录!!!
这些是注释的必选项,你可以改变标签名字,比如说改为英文。我喜欢用中文,因为英文长短不一。 这些是注释的可选项,你可以随便增删或改为英文,也可以按自己的喜好或开发规范重新排序。 如果你改变了标签,这两个变量也要做相应改变,否则注释会很难看,存入时还可能读错。 下面的可选项目前不推荐改动,有兴趣的话可以看看。 前面已经说过,用//rw来标记成员变紧是否可读写,标记为//rw的成员变量会生成public:的读写接口。 如果你把getsetall设为true,vcextend就会为所有的成员变量生成数据读写函数,其中,有可读写标记的成员变量会生成public:的读写函数,而其他读写函数的访问控制符与成员变量一致。有点迷糊吧?看看例子: protected: 如果getsetall设为true,则会生成: public: 可以看出,公共的读写接口还是一样的,那么protected和private的读写函数有什么意义吗? 我正在尝试一种c++编程观念:类的封装可以进一步扩大,将类设计和类实现完全分开,函数声明、成员变量、构造与析构及对象有效性检查、数据接口均属于类设计,其他功能函数的实现属于类实现,类实现完全不接触成员变量,而是通过数据读写函数来操作数据。这样做有一些很吸引人的好处,比如说assertget、assertset、getsetall全部设为true,类实现中全部通过getset函数来读写成员数据,那么将自动形成严密的断言网络,可以拦截很多很难查找的错误,照我的说法,是用密集阵火炮拦截巡航导弹。当然,这是指assertvalid函数已经实现得很好。 还有其他好处,但也有一些缺点,我正在尝试使用,有兴趣的朋友可以一起探讨,目前不推荐。 |
|
跟开发工具有关的东西,是否有用好用,要靠实际应用中来检验。如果你发现了什么问题,或修改了其中的某些缺陷, 请在论坛中发表。如果你有建议,更不要藏私啊。我专门搞了个小论坛,就是为了收集各种问题和建议,过一段时间,我会推出修改后的版本。 还有一些功能正在酝酿中,比如小组中多人各自开发,如何合并文档等等。你如果有什么相关需求,请当作建议提出来。 |