类设计者的核查表

核查表不是任务清单。它的用途是帮你回忆起可能会忘掉的事情,而不是约束你。

下面的问题没有确切的答案,关键是要提醒你思考他们,并确认你所做的事情是出于有意识的决定,而不是偶然行为。

你的类需要一个构造函数码?(基本上是)

你的类成员是私有的吗?

你的类需要一个无参的构造函数码?

是不是每个构造函数初始化所有数据成员?

类需要析构函数吗?

类需要一个虚析构函数吗?

你的类需要复制构造函数吗?

你的类需要一个赋值操作符码?

你的赋值操作符能够正确地将对象赋给本身码?

你的类需要定义关系操作符码?

记得复制构造函数和赋值操作符地参数类型中加上const了吗?

如果函数有引用参数,他们应该加上const限定符码?

记得适当的声明成员函数为const了吗?

 

因为无法让编译器自动完成上述不完善定义的工作,所以程序员就得检查这些问题。

c++“只为用到的东西付出代价”。c++更适合喜欢思考的程序员

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值