Loading

摘要: Item18:让接口容易被正确使用,不易被误用 总结: 1.好的接口很容易被正确使用,不容易被误用。你应该在你的所有接口中努力达到这些性质。 2.“促进正确使用”的办法包括接口... 阅读全文
posted @ 2017-03-12 23:44 李正浩 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 问题1:为什么要内存对齐?平台原因:不是所有的平台都能访问到任意地址上的任何数据,如果在特定的地址上找不到数据的话就会抛出硬件异常。性能问题:简单的来说如果没有使用内存对齐的话... 阅读全文
posted @ 2017-03-12 22:39 李正浩 阅读(124) 评论(0) 推荐(0) 编辑
摘要: Item 13:以对象管理资源 关键的两个想法(这种方式其实在很多地方都可以看出影子,比如managing pool的模型): 1.获得资源后立刻放入管理对象(... 阅读全文
posted @ 2017-03-11 23:02 李正浩 阅读(104) 评论(0) 推荐(0) 编辑
摘要: Item 05:了解C++默默编写并调用了哪些函数 总结:编译器可以暗自为class创建default 构造函数、copy构造函数、copy assignment操作符... 阅读全文
posted @ 2017-03-11 21:02 李正浩 阅读(83) 评论(0) 推荐(0) 编辑
摘要: (将每一条item的总结和自己的理解给记录下来,以后有需要的话可以再回头参阅这些资料,不懂的再翻书温故。) Item 02:尽量以const ,enum,inline替... 阅读全文
posted @ 2017-03-11 20:04 李正浩 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 在看《深入探索C++对象模型》这本书的时候,我看见了bitwise senimatics和memberwise senimatics,看的时候还不清楚这两个是什么意思,书本上直... 阅读全文
posted @ 2017-03-11 19:34 李正浩 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 在完成一个迭代器的时候,我们可能会暴露太多的细节在外面,为了将这些细节给隐藏,我们需要封装,这也是为什么每一种STL容器都提供了一种专属的迭代器。 为了解决以“迭代器所... 阅读全文
posted @ 2017-03-11 18:53 李正浩 阅读(143) 评论(0) 推荐(0) 编辑
摘要: new运算符和delete运算符 运算符new看似是一个简单的运算,比如:int *pi=new int(5);但是它实际由两个步骤完成: 1.通过适当的new运算符函... 阅读全文
posted @ 2017-03-11 12:29 李正浩 阅读(100) 评论(0) 推荐(0) 编辑
摘要: member function相对于nonmember function之间不存在效率之间的差别,因为编译器内部已经将“member 函数实体”转化为对等的“nonmember... 阅读全文
posted @ 2017-03-11 00:07 李正浩 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 首先给出以下例子: class X{};class Y:public virtual X{};class Z:public virtual X{};class A:public... 阅读全文
posted @ 2017-03-10 23:30 李正浩 阅读(120) 评论(0) 推荐(0) 编辑