dylanin1999

导航

Effective C++条款18~19

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

请记住:

1、好的接口很容易被正确使用,不容易被误用。应该在所有的接口中努力达成这些性质

2、“促进正确使用”的办法包括接口的一致性,以及与内置类型的行为兼容。

3、”阻止误用“的方法包括建立新类型、限制类型上的操作,束缚对象值,以及消除客户的资源管理责任

4、tr1::shared_ptr支持定制型删除器。可以防范DLL问题,可被用来自动解除互斥锁等。

 

条款19:设计class犹如设计type

1、新type的对象应该如何被创建和销毁?

2、对象的初始化和对象的赋值应该有什么样的差别?

3、新type的对象如果被pass-by-value,意味着什么?

4、什么是新type的”合法值“?

5、新的type需要配合某个继承图系吗?

6、新的type需要什么样的转化?

7、什么样的操作符和函数对此新type而言是合理的?

8、什么样的标准函数应该驳回?

9、谁该取用新type的成员?

10、什么是新type的”为声明接口“?

11、新的type有多么一般化?

 

posted on 2022-08-13 16:15  DylanYeung  阅读(10)  评论(0编辑  收藏  举报