1. 定义:装饰模式以透明的方式,动态地为一个对象(不是类)添加一些额外的功能。又名包装模式(Wrapper);2. 特性:提供了比用继承更灵活的替代方案。3. 设计原则:1). 多用组合,少用继承。利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用...
分类:
其他好文 时间:
2014-07-22 22:43:35
阅读次数:
273
动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。具体被装饰者和抽象装饰类都继承于抽象被装饰者类,继承的是类型,而不是行为。行为来自装饰者和基础组件,或与其他装饰者之间的组合关系。装饰者通常是...
分类:
其他好文 时间:
2014-07-22 00:35:34
阅读次数:
211
heap
-------------------------------------------------------------------------
binary heap 是一种完全二叉树。
隐式表示法:以 array 表述 tree。
小技巧:将 array 的 #0 元素保留,则第 i 个元素的左右子节点分别是 2i 和 2i + 1,
父节点是i/2 --> STL 里没有采用这种小技巧
将 array 无法动态改变大小,所以用 vector 替代 array
这个文件里提供了各种堆操作的...
分类:
其他好文 时间:
2014-07-22 00:32:34
阅读次数:
256
最近在用P178G,需要对内部寄存器进行控制,实现各个PHY的开关与VLAN配置,为了替代最初模拟开关实现的“伪”开关,通过ds得知可以使用SMI接口进行读写寄存器,控制IC工作状态。
时序与格式如图:
该芯片前置码与其他很多芯片的32Bit高电平不同,按32bit实现也可以通用。常规SMI各个位域说明如下:
PRE:帧前缀域,为32个“1”比特,这帧前缀域不是须要的,某些物...
分类:
其他好文 时间:
2014-07-22 00:29:38
阅读次数:
215
SPDY(读作“SPeeDY”)是Google开发的基于TCP的应用层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验。SPDY并不是一种用于替代HTTP的协议,而是对HTTP协议的增强。新协议的功能包括数据流的多路复用、请求优先级以及HTTP报头压缩。谷歌表示,引入SPDY协议后,在...
分类:
其他好文 时间:
2014-07-22 00:26:33
阅读次数:
450
用JS实现表格中隔行显示不同颜色 第一种: 第二种: 第三种(第二种的改进版): 用布儿变量替代之:内存换时间 var isToggled = false; var oTable = document.all['oTable']; for(var i=0;iihandu 我的方...
分类:
Web程序 时间:
2014-07-22 00:15:34
阅读次数:
215
题目链接:uva 219 - Department of Redundancy Department
题目大意:给定一些关系,问哪一些关系是可以被替代的,如果可以被替代,给出替代的方案,一种即可。
解题思路:因为总共也就26个字母,所以用二进制数表示状态。剪枝,每次将所有可选关系均考虑进去都无法满足则是false。
#include
#include
#include
usi...
分类:
其他好文 时间:
2014-07-22 00:11:33
阅读次数:
214
用法跟Android的android:layout_weight属性类似,可类比Android中的用法,这样比较好记,由于目前所有浏览器都不支持大部分的属性,所以所有的属性都需要加上Firefox、Safari、Opera
以及 Chrome支持替代的
-moz-和-webkit-前缀,现在基本上所有的CSS3属性都应该这样做,即每个属性都需要至少设置三个,参考下面的例子。
父容器属性...
分类:
Web程序 时间:
2014-07-21 14:05:17
阅读次数:
261
见过很多人写c代码、用结构体将各种要素封装、如下转载一个使用epoll的例子:
//
// a simple echo server using epoll in linux
//
// 2009-11-05
// 2013-03-22:修改了几个问题,1是/n格式问题,2是去掉了原代码不小心加上的ET模式;...
分类:
编程语言 时间:
2014-07-21 13:48:46
阅读次数:
312