Effective C++
文章平均质量分 75
BeckyLu
这个作者很懒,什么都没留下…
展开
-
条款:09绝不再构造和析构过程中的调用virtual函数
条款:09绝不再构造和析构过程中的调用virtual函数先看一段代码:class base{public : base() { localfunc(); } virtual void localfunc(void) = 0;};void base::localfunc(void){ cout << "class原创 2014-11-22 20:25:53 · 411 阅读 · 0 评论 -
条款:06 若不想让编译器自动生成函数,则明确拒绝
条款06 如果不想让编译器自动生成函数, 则需要在自定义的类中min原创 2014-11-22 19:20:06 · 416 阅读 · 0 评论 -
条款:07 为多态基类声明virtual析构函数
Effective C++中说过:1、带有多态性质的base class应该声明一个virtual析构函数。如果class带有任何virtual函数,它就应该拥有一个virtual析构函数;2、Classes的设计目的如果不是作为base class使用, 或者不是为了具有多态性质,就不该声明virtual 析构函数。详见:Effective C++,条款07:为多态基类声明virtu原创 2014-01-12 00:14:11 · 437 阅读 · 0 评论 -
总结条款:11在operator=中处理“自我赋值”
“自我赋值”发生在对象被赋值给自己时 :class A {};A a;a = a;虽然看起来很别扭 ,但是这是合法的。一般而言,如果某段代码操作pointer或者references而它们被用来“指向多个相同类型的对象”,我们就需要考虑这些对象是否为同一个;原创 2014-11-24 20:00:11 · 380 阅读 · 0 评论 -
算法学习之合并排序算法
合并排序算法,总共分三步:1、分解:分解数据串,将数据串分解成若干个小型的数据串,最小单位为每个数据串中只有1个数据;2、解决:也就是比较数据大小;3、合并:将已经排序好的若干个小型数据串合并为最终数据串;原创 2015-02-02 18:10:24 · 571 阅读 · 0 评论