访问者模式Visitor访问者模式(Visitor Pattern)是GoF提出的23种设计模式中的一种,属于行为模式。据《大话设计模式》中说算是最复杂也是最难以理解的一种模式了。
定义(源于GoF《Design Pattern》):表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。
从定义可以看出结构对象是使用访问者模式必备条件,而且这个结...
分类:
其他好文 时间:
2015-05-15 15:37:23
阅读次数:
195
说明:线性布局是最常用的布局,其包含的所有View会按照线性来排列。
需要注意的就是四个比较常用的xml属性:1 android:gravity对应方法:setGravity(int)
说明:这个属性设置布局内组件的对齐方式,支持以下属性值:
属性值
作用 top
将对象放在其容器的顶部,不改变其大小
bottom
将对象放在其容器的底部,不改变其大小
left
将...
分类:
移动开发 时间:
2015-05-13 21:59:26
阅读次数:
136
A.给某个类扩充方法(不改变原来的类)例如,给类Person加上名为Simon的category,加上一个-study方法使用()注明Person+Simon.h 1 @interface Person (Simon) 2 - (void) study; 3 @end 4 5 Person+Si.....
分类:
其他好文 时间:
2015-05-13 21:43:07
阅读次数:
170
eclipse选中项目右键:打开org.eclipse.wst.common.component:修改.settings目录下的org.eclipse.wst.common.component文件 ...
分类:
系统相关 时间:
2015-05-13 12:26:53
阅读次数:
607
1 :set paste2 :set nopaste先使用第一个命令,然后进入插入模式,粘贴代码。然后使用下个命令,恢复编辑器状态。
分类:
系统相关 时间:
2015-05-13 06:06:59
阅读次数:
184
模板方法模式:定义一个操作中算法的框架,而将一些步骤延迟到子类中。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
Template Method Pattern: Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Template Me...
分类:
其他好文 时间:
2015-05-12 17:17:52
阅读次数:
146
概念1OC中提供了一种与众不同的方式-Category,可以动态地为经已存在的类添加新的方法。变态啊,不改变.m 和.h2可以保证类的原始设计规模大小,功能增加时再逐步扩展。3Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的文件中。只是方法,不能拓展成员变量--...
分类:
其他好文 时间:
2015-05-11 23:23:30
阅读次数:
112
解决办法:“最重要一点, 主机上要允许用户以非guest身份登录:主机上运行gpedit.msc,计算机配置/windows设置/安全设置/本地策略/安全选项/网络访问:本地帐户的共享和安全模型选择: 经典-对本地用户进行身份验证,不改变其本来身份”来源自:http://answers.micros...
多种排序算法的总结(不包括复杂度的详细推算)
稳定排序与不稳定排序
稳定排序:相同元素在排序中的相对位置不改变。
不稳定排序:相同元素在排序中的相对位置改变。
内部排序与外部排序:
内部排序:待排的记录与内容都放在计算机的随机存储器中进行的排序过程
外部排序:一般指待排序记录的数量很大,以致内存中一次不能完全容纳全部的记录,在排序过程中,需要对外存进行访问的排序过程。
排...
分类:
编程语言 时间:
2015-05-11 08:52:38
阅读次数:
156
方式一:将字符串反向输出来,不改变内存(递归实现)
void reverse_string(char *str)
{
/*遇到'\0'什么也不做,函数结束*/
if(*str == '\0')
;
else
{
/*输出下一个*/
reverse_string(str + 1);
cout<<*str;
}
}方式二:改变内存(交换法)
/*非递归实现:操作内存*/...
分类:
其他好文 时间:
2015-05-10 18:58:07
阅读次数:
177