本文将从以下几点浅谈原型模式:
概述
结构图
分类
浅复制:结构图
代码
复制图示
深复制:结构图
代码
复制图示
总结
概述:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节。
复制过程,并不是做一个抽象类,去实例化它。而是只需通过实现一个含有Clone()方法的接口就可以去克隆,这就是.NET在System命名空间中提供的ICloneable接口 。...
分类:
其他好文 时间:
2014-05-05 21:27:41
阅读次数:
359
不知道今天做了些什么诡异的操作,刚才重启了Ubuntu之后,发现输入密码之后,闪了一下又回到了登陆界面,根本无法进入系统~心想完了,好不容易把Ubuntu弄得个人十分的满意,那不成要重新启动。不用不用,经过了1个小时的担惊受怕,问题终于解决,使得我能够现在在这里敲下这一篇博文!
网上说好像是说修改了什么系统变量,反正我不懂,百度了n就之后无解,换用谷歌,立马找到解决方案……
在登陆界面按下Ct...
分类:
其他好文 时间:
2014-05-05 13:18:44
阅读次数:
266
typename与class都可以用作模板形参定义的关键字,两者无异~~
可是,typename的用途并非仅限于此,如下面的代码:
{CSDN:CODE:323655}
在上述代码中,iter的类型是C::const_iterator,实际的类型取决于C的类型。const_iterator 同时也是C内部的typedef 类型名。 但是,在此处,编译器的行为不会是你预期的...
分类:
编程语言 时间:
2014-05-04 00:19:35
阅读次数:
330
兼容的动态载入JS
屌丝就是悲剧,五一还得宅家里敲代码专研技术。
说起动态载入JS,搞web的肯定不陌生,著名的YUI库就有强大的模块化的动态载入JS机制。在代码量不断庞大的今天,动态载入JS作用还是很明显的。其实这门技术已经很古老了,但是发现网络上很多资料也同样很古老。诶,没法,自立更生吧,人生总要不断积累的,更何况作为一个程序猿呢。
关于动态JS大家比较关注的无非就两点,兼容性如何?如何...
分类:
Web程序 时间:
2014-05-03 23:57:44
阅读次数:
423
在内的内部定义并使用,外部无法访问,以双下划线作为前作,定义后被python转为
_classname__变量名了
--------------------------------------------------------------------------------------
In [1]: class aa:
...: __x = 12 #私有变量_ _x...
分类:
编程语言 时间:
2014-05-03 17:37:55
阅读次数:
333
现在很多软件的免费版都是有广告的,这让原本清清爽爽的界面变得乱七八糟,QQ 虽然没有收费版,但是也要开了会员才能去广告。那不开会员如何屏蔽 QQ 广告呢?早在 QQ2009 Beta 版的时候,可以通过删除一些文件让非会员也能实现去广告的目的,可惜从 QQ2009 正式版起增加了文件完整性检查,删除文件会导致 QQ 无法启动,并且要求重新安装。
这里要介绍的方法,其实只要你对 Windows 操...
分类:
其他好文 时间:
2014-05-03 17:34:44
阅读次数:
258
近日浏览csdn博客,发先一本自编的分享自编《Python基础教程》无水印文字版,推荐读之,内容朴实无华无拖泥带水,板式清晰,是python入门和初学者必藏教程。
下载地址
http://download.csdn.net/detail/u014036026/7188403...
分类:
编程语言 时间:
2014-05-03 17:06:16
阅读次数:
407
这种题一般有二种形式,共同点是都已知中序序列。如果没有中序序列,是无法唯一确定一棵树的。
已知二叉树的前序序列和中序序列,求解树。
1、确定树的根节点。树根是当前树中所有元素在前序遍历中最先出现的元素。
2、求解树的子树。找出根节点在中序遍历中的位置,根左边的所有元素就是左子树,根右边的所有元素就是右子树。若根节点左边或右边为空,则该方向子树为空;若根节点
边和右边都为空,...
分类:
其他好文 时间:
2014-05-03 16:58:36
阅读次数:
325
typedef不常见但值得一提的用途:
1. 用typedef来定义与平台无关的类型。
比如定义一个叫 REAL 的浮点类型,在目标平台一上,让它表示最高精度的类型为:
typedef long double REAL;
在不支持 long double 的平台二上,改为:
typedef double REAL;
在连 double 都不支持的平台三上,改为:
typedef ...
分类:
其他好文 时间:
2014-05-03 16:12:35
阅读次数:
289
/**
*在js中并不存在类,所以可以直接通过Object来创建对象,但是使用这种方式创建有一
*弊端:由于没有类的约束,无法实现对象的重复利用,并且没有一种规范约定,在操作时容易带来问题。
*/
var person = new Object();
person.name = "octopus";
person.age = 25;
person.say = function(...
分类:
Web程序 时间:
2014-05-03 15:39:22
阅读次数:
371