条款18:让接口容易被正确使用,不易被误用

一、让接口不容易被误用

这里给出的例子是关于日期的类的设计:

二、限制类型内什么可做,什么不可做

三、与内置类型兼容、保持接口一致

四、消除客户管理的责任,使用智能指针

如果函数返回指针,客户有可能没有删除指针,或者删除指针超过两次,因此返回智能指针比较好。

总结:

1、好的接口很容易被正确使用,不容易被误用。你应该在你的所有接口中努力达成这些性质。
2、“促进正确使用”的办法包括接口的一致性,以及与内置类型的行为兼容。
3、“阻止误用”的办法包括建立新类型、限制类型上的操作,東缚对象值,以及消除客户的资源管理责任。
4、tr1:: shared ptr支持定制型删除器( custom deleter)。这可防范DLL问题,可被用来自动解除互斥锁( mutexes;见条款14)等等。

发布了257 篇原创文章 · 获赞 36 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/sgh666666/article/details/90698586