自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (3)
  • 收藏
  • 关注

原创 模版方法模式与策略模式如何让软件开发符合“开闭原则”

背景描述在实现一个需求时,通常开发人员都不会准确预测到功能以后会如何改变,如果设计的代码不符合“开闭原则”,那么将来需求稍微变动,往往程序就要进行较大改动,或者代码十分臃肿,不利于维护。我以一个具体的场景来说明,曾经做过这样一个需求,一个网上商店需要根据用户所选商品进行结算,这里结算的方式当时已知有“支付宝”跟“银联”,如何来设计支付的业务逻辑?很明显,该需求后期可能会改动,比如现在有微信

2017-05-22 16:58:31 938

原创 工厂方法重构策略

先看下面的代码(模拟Web客户端读取远程URL上的资源):public class WebClient{    public String getContent( URL url )    {        StringBuffer content = new StringBuffer(); //用于存储从远程URL读取的资源        try        {

2014-09-10 22:20:50 479

原创 在linux上安装xenwebmanager以web方式控制xenserver

转载此文请一定注明出处,否则将追究法律责任!!1. 下载并import虚拟机,该虚拟机开启并配置好后就可以作为web服务器运行,在客户端就可以用IP地址以web方式来控制xenserver了This is a very long URL from Sourceforge but it does work if you copy and paste it.cd ~w

2014-03-08 10:48:22 3853

转载 C++变量对齐

编译器要对c++代码进行编译时需要按照相应的类型为变量分配内存空间,最为人们熟知的就是那五个空间了:栈,堆,全局数据区,常量区和代码区。现在知道了哪些变量存放在哪些空间里了,但是在相应的空间里又是如何存放的呢?相信很多人都已经知道了,我也知道了。对齐方式有三种规则,看网上已经很详细了,我还是想用自己的话再说一遍吧: 1. 数据成员对齐规则:  为类,结构体或联合体分配内存时,首先可以确定这

2014-02-28 01:59:43 1184

原创 一招教你学会C C++混编

extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。这里举个例子:我们实现了两个模块module1和module2.见下:# module1.h  #ifdef __module1_H_  #define __module1_H_H  #ifdef __cplusplus  extern "C"    {  #endif     

2014-02-25 16:48:50 653

转载 关于C++中的临时对象问题

C++中真正的临时对象是看不见的,它们不出现在你的源代码中,临时对象的产生在如下几个时刻: 1.       用构造函数作为隐式类型转换函数时,会创建临时对象。例:        class Integer        {        public:               Integer(int i)               :m_val(i) {}

2014-02-17 21:08:33 1211

转载 重载=时返回对象引用与非引用的区别

摘要:    在面向对象程序设计中,对象间的相互拷贝和赋值是经常进行的操作。    如果对象在申明的同时马上进行初始化操作,则称之为拷贝运算。例如:        class1 A("af"); class1 B=A;     此时其实际调用的是B(A)这样的浅拷贝操作。    如果对象在申明之后,再进行赋值运算,我们称之为赋值运算。例如:        class1 A(

2014-02-17 20:27:06 726

转载 C++类型转换关键字(*_cast)

在C/C++语言中用 (type) value(在C++还可以采用type(value))来进行显式类型转换(explicit type conversion),常常又被称为强制转换(cast投射/铸模)。这种转换的正确性完全掌握在程序员手中,传统上强制转换往往被过度使用,成为C++程序犯错的一个主要根源。为了减少强制转换的副作用,并且在查错时使程序员能够快速定位(总是最值得怀疑的)强

2014-02-17 00:45:02 520

转载 教你真正理解红黑树的删除原理

对于普通的二叉树的删除。我们是分三种情况来考虑的。有两个儿子,有一个儿子和没有儿子对于没有儿子节点的,那就只需直接删除该节点就行了。对于有一个儿子节点,我们直接删除当前节点,然后用其儿子节点顶替该节点对于有两个儿子的,我们选择将其后继节点(中序遍历下的后继,右子树中的最小元素节点)的内容赋值给当前要删除的节点,然后删除这个后继节点。也就是说正真删除的是其后继节点。由树的性质可知其后

2014-02-16 16:19:04 1077 1

分治法解凸包问题

利用分治法解凸包问题,将点集合分成上包下包两个问题来讨论,的到其中一个的解和递归求出最终解

2012-09-29

计算机组成原理(第二版)唐朔飞 超级棒pps课件

迄今为止最好,将来也找不到比这好的计算机组成原理课件。不看不知道,看了绝对不失望,仅此一项资料就能让你的计算机组成原理知识达到出神入化的境界。

2012-07-20

空空如也

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

TA关注的人

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