装饰者模式是很有意思的一种设计模式,你将能够在不修改任何底层代码的情况下,给你的(或别人的)对象赋予新的职责。不是使用继承每回在编译时超类上修改代码,而是利用组合(composition)和委托(delegation)可以在运行时具有继承行为的效果。
代码应该如同晚霞中的莲花一样地关闭(免于改变),如同晨曦中的莲花一样地开放(能够扩展)。
这就是,设计原则之五:类应该对扩展开放,对...
分类:
编程语言 时间:
2014-06-08 17:35:12
阅读次数:
252
下面的代码片段输出是什么?为什么?
char *ptr;
if((ptr = (char *)malloc(0))==NULL)
puts("Got a null pointer");
else
puts("Got a valid pointer");
解析:......故意把0值传给了函数malloc,得到了一个合法的指针,这就是上面的代码,该代码的输出是"Got ...
分类:
其他好文 时间:
2014-06-08 17:11:28
阅读次数:
285
马上毕业了,在毕业之际,我辞掉了以前的实习工作,主要是工作内容不太感兴趣。最近在找工作,主要是找Java和Android方面的工作。自以为学得不错,但是面试屡屡受挫。先提一下问到的一些问题吧。
第一个:在弱网传输的情况下,是怎么做到节约流量的?
由于Android接触的确实不多,这个问题自然没有很愉快的答上来。
我这样回答的:将一些数据进行压缩,例如传一个字符串,先将字符串转换成字符数组的形...
分类:
移动开发 时间:
2014-06-08 16:49:31
阅读次数:
229
这是个老题目了,主要考察的是能不能考虑到所有的情况,还有就是怎么判断是否溢出。
情况大致分为如下四种:(下面我使用@代替空格,x代表除数字之外的所有字符)
1. "@@[+-]3232343@@"
2. "@@[+-]333x54"
3. "@@[+-]4343"
4. "2147483648"或者"-2147483649"(也就是溢出的情况)
下面代码中给出了两个判断是否溢出的方法。...
分类:
其他好文 时间:
2014-06-08 15:47:49
阅读次数:
270
在上层软件编程中,往往需要提供一个月历控件让用户选择相应日期或者用此月历控件来强调特定的一天。MFC的 Month Calendar Control 控件自系统升级到 Windows 7 之后,对于日期控件所能做的操作变少了,不能对指定的日期的背景颜色进行更改,在网上查了很久之后发现是操作系统绘图风格的关系。在这种情况下。只能通过加粗特定日期的字体粗细来凸显该日期的不同(至少本人只想到这个办法)。...
分类:
其他好文 时间:
2014-06-08 15:14:38
阅读次数:
316
最近在做一个蓝牙相关的项目, 需要在应用进入后台, 或者手机属于锁屏状态的情况下, 仍然保持蓝牙连接, 并且能正常接收数据。本来以后会很麻烦, 但是学习了下..发现就2步而已。简单的不能再简单了。好了。下面是具体实现办法。1.在xxx-info.plist文件中, 新建一行 Required background modes , 加入下面两项。App shares data using Cor...
分类:
移动开发 时间:
2014-06-08 15:12:13
阅读次数:
310
Oracle数据库默认情况下,会以DD-MON-YY的形式显示日期,其中DD是天数,MON是月份的前三个字母(大写),而YY是年份的最后两位。数据库实际上会为年份存储4位数字,但是默认情况下只会显示最后两位。
一个简单的语句:
SELECT TO_DATE('21-MAY-2014') FROM dual;
引发ORA-01843:无效的月份!...
分类:
其他好文 时间:
2014-06-08 14:40:51
阅读次数:
238
最近在实际的项目中碰到这样的问题:
嵌入式系统DDR (RBC row, bank, columne), 每块1Gbit816, 两块由片选决定读写其中的一块.
Memory controller通过AXI连接在SOC中.
1.
在I-CACHE没有使能的情况下, 通过MC访问DDR有三路TRAFFIC, 分别是取指令, CPU刷/写FRAME BUFFER, DMA取/读FRAM...
分类:
其他好文 时间:
2014-06-08 08:58:15
阅读次数:
242
1.ErrorProvider控件
(1)用途:在不影响用户操作的情况下向用户显示有错误发生,一般在验证用户输入的数据是常用到该控件,这里就好像web应用中的CompareValidator等验证控件差不多。
(2)一般通过ErrorProvider控件的SetError方法设置指定控件的错误。
public void SetError(Control control,string...
上上周的事情了,端午小长假将近,还是按往常一样,最后一天一定要搞一个“课题”,场面不大,一天就能搞定的东西,如果说系统学习vim或者Emacs之类的,那就算了...还好,问题呼之即来,那就是write系统调用是不是原子的,答案很显然,不是!但大师说带有APPEND标志的write是原子的,很多软件的日志都是O_APPEND打开,然后在不加锁的情况下直接write的,不会出现问题,此事如何证实?本文...
分类:
移动开发 时间:
2014-06-08 02:13:25
阅读次数:
339