自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Lemon

Something is better than nothing.

  • 博客(4)
  • 收藏
  • 关注

原创 虚继承

直入主题:为什么虚继承能够解决“菱形继承”? (阅读下文之前可参考下我之前总结的“虚函数的本质”和“多重继承”。) 经过gdb调试,终于揭开了面纱。 下例类结构:           Base           /        \ DerivedA DerivedB           \        /         Derived 在非虚继承时,DerivedA和

2016-04-28 12:25:29 568

原创 策略模式

初看策略模式,做了简单的调试,后续有时间再仔细思考一下,在这里做个笔记。 策略模式: 在Context对象中设置策略属性(构建策略);通过Context对象执行策略。 工厂模式: 在工厂中构造任务,赋值给接口指针;通过接口指针操作任务方法。 #include using namespace std; enum STRATEGY{S1, S2, S3}; class Stra

2016-04-26 16:46:15 433

原创 堆内存传递

下面一段关于GetMemory()的代码是面试时最容易出现的题目。 发现自己在解释原理的时候,还是有点“拗口”, 就来总结一下吧。 下例实际上涉及的就是传参的方式或堆内存的传递(堆内存靠指针来传递)。 传参的方式: 1.值  2.指针(如果变量本身就是一个指针,把此变量当作一个对象,就要传指针的指针?)  3.引用(实际就是传变量本身,不管变量是一个对象还是一个指针) 详见代码注

2016-04-22 09:27:08 668

原创 类初始化列表

以前在写代码时用初始化列表,因为前辈们说效率更高,也没有去想为什么。 最近看>Item4: 确保对象在使用前被初始化,恍然大悟。 如果使用赋值的方式在构造函数中初始化“类成员变量”,会先调用这个“类成员变量”类的默认构造函数,再调用赋值函数。 而使用初始化列表初始化“类成员变量”,只会调用这个“类成员变量”类的拷贝构造函数。 “赋值方式初始化”比“初始化列表”多调用一次默认构造函数,对于数

2016-04-05 13:22:33 800

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除