C++沉思录(Ruminations On C++)读书笔记1.如何定义一个完整的类
作者: 2006-4-27 12:19
C++ 哲学:只为用到的东西付出代价
定义一个类时必须搞清楚的几个问题:
-
需要构造函数吗?
如果答案为 no,那么很可能你需要定义的只是一个结构,而不是一个类,因为构造函数的用途是用一种明确定义的状态来设置对象。
-
数据成员是私有的吗?
一般来说,如果数据成员为公有,你很难控制这些成员何时被访问。
-
需要一个无参数的构造函数吗?
如果一个类已经有了构造函数,而你想声明该类的对象时不必显示地初始化它们,则必须显示地写一个无参数的构造函数。(特别是当你需要生成这个类的对象数组时!)
-
每个构造函数是否都对所有数据成员进行了初始化了?
对象的状态由对象的数据成员反映,因此每个构造函数都有负责为所有的数据成员设置经过明确定义的值。如果某个构造函数没有做到这一点,就很可能导致错误。