编写良好类的习惯

一:C++ 类有一个很重要的处理:  在适当的时候,需要程序员定义复制构造函数、赋值操作符、析构函数。

                                        ----通常,只要这三者其中一个出现需要自定义的,另外两个也需要,三者同时出现的。

什么时候需要?

------------1.类里面具有指针数据成员

------------2.有成员表示在构造函数中分配的其他资源

------------3.类在创建对象时候必须做一些特定的工作,比如新建一个唯一标识的ID。

 

怎样做到第一时间反应需要做这些事情?

------------1.针对第一点,发现自己定义了指针成员数据,这个比较容易识别

------------2.只要类发生了动态分配时候就需要注意了,当这个动态分配的资源直到对象生命结束都没有人对它进行处理,也就是释放,就应该自定义析构函数。

------------3.这个更简单了,针对一些特殊的数据成员,不可能直接拷贝别的对象的,其实指针数据成员也可以这样理解,保存地址的指针地址不应该跟别的对象产生的一样,

                    除非是想对同一对象进行操作,这种情况就应该使用引用计数了。

 

其实谨记这几点,其实关键就是做到 动态分配----结束释放,指针这些东西不应该太难。

 

二:继承

1.继承中同样要处理好上述三者,另外不同类层次中不应该定义同名非虚函数,因为不同层次中的类这样是构成不了重载函数的。

2.继承中必须为基类编写虚析构函数

posted on 2010-07-28 10:34  Pro.Charm  阅读(231)  评论(0编辑  收藏  举报

导航