- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 Java中函数的参数传递
<br />关于Java函数的参数传递,很多人感觉比较绕,很多人理解为函数中基本数据类型是值传递,类类型是引用传递。这种理解是不正确的。在网上看到一句话“java函数是传值的,java函数传递的参数是对象的引用”,可以很精辟的解释了java的参数传递问题。这句话可以分开读,前半句表明了java函数是传值的,无论参数是基本数据类型(int,char,long...)还是类类型,后半句解释了为什么在函数内可以修改参数对象内的值。<br /> <br />看下面的几行代码<br /><br />public Te
2010-12-27 21:59:00 3617
原创 在brew手机上部署工程
<br />把一个应用程序部署到brew手机上,主要是把下面的文件拷进手机就行了。通过brew SDK带的工具”loader”可以连接到手机。<br />1. APL文件。一个应用程序想要出现在手机的应用程序列表中,必须要有一个apl文件,里面主要设置程序在不同语言下的名称、程序icon图标和程序的classID。 apl的文件名与应用程序无关,如可以建立a.apl, b.apl, c.apl,它们里面的classID都是browser应用程序的,则在手机应用程序列表中可以看到三个一样的程序。我
2010-12-23 09:44:00 909 1
原创 C++跨平台手机开发的一点心得
前一段做C++手机平台的开发,把之前的一点心得写一下。因为手机平台最近发展比较快,平台比较多,同一种平台的版本之间兼容性也差,所以推出一款手机产品想要支持多个平台,需要投入大量的研发力量,对每个平台进行开发。而程序员要求对平台知识也比较熟悉,这对程序员要求比较高而且也不容易进行项目管理。如果一个小组比较缺人,别外一个小组项目完成人员比较闲,可平台不一样,想借过来一些人来开发都不行,估计还没等借过来的人熟悉平台项目都结束了。为了解决这个问题,有些有实力的公司都开发了自己的类库,对程序员屏蔽了平台相关的知识。
2010-12-14 20:35:00 2356
转载 解析 extern
1、 声明外部变量现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。下面举一个简单的例子。创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件://A.cppint i;void main(){}//B.cppint i;这两个文件极为简单,在A.cpp中我们定义了一个全局变量i,在B中我们也定义了一个全局变量i。我们对A和B分别编译,都可以正常通过编译,但是进行链接的时候,却出现了错误,错误提示如下:L
2010-12-14 09:30:00 598
原创 S-O-L-I-D 原则 之 开放-封闭原则
正如Ivar所说,“所有的系统在它的生命周期内都会改变,开发系统时期待它比第一个版本能够持续更长的时间往往另人头疼。”怎么设计才能使其面对改变比较稳定并且比第一个版本持续更长时间?Bertrand Meyer在1988年就给出了指导方针即后来创造的著名的开放-封闭原则。“软件实体(类、模块、函数等)应该对于扩展开放,但对于修改封闭。 当对程序进行一个单一个改动会导致它所依赖的模型的一系列的改变,这种程序就是我们不想要的“坏”设计。程序变得脆弱、死板、不可预知和不能重用。开放-封闭原则通
2010-12-07 15:31:00 1176
原创 S-O-L-I-D 原则 之 单一职责原则
同事给了发了一份文档,主了讲了S-O-L-I-D原则,有的是专题,有的是从某本书中拿出来的一节,全英文的,我觉得这些原则很重要,于是把自己半翻译半理解的写到这里,加深自己理解。S- Single Responsibility Principle(SRP)单一职责原则 引:只有佛自己有道破玄机的责任。单一职责表现为“强聚集”(cohesion),不应该有一个以上的原因修改一个类。例如一个保龄球小游戏,可以用一个"Game"类处理两个单独的职责。一个是保持现在框架的轨迹,另一个是计算分数,但最后它被拆成了两个
2010-11-25 20:33:00 1109
原创 关于viewport/container的消息传递
我通过把两个widget放到container内组装了一个新的控件,在测试时发现了问题,container内的两个widget无法接收消息,于是对container小研究了一下。在brew下container内如果插入的内容太多,超过它的宽度和高度,是直接通过滚动来显示的,需要先用一个viewport来装饰这个container,此时可以直接拖拉来看区域外的内容,为了更直观些,想要看到滚动条,需要再用一个scrollbar来装饰这个viewport.在我们的应用中,有些区域内可能东西比较多,需要拖拉来显示,
2010-10-27 21:02:00 883
原创 VS2005中条件断点和内存变量监测 && C++中的#include包含和class包含区别
<br /> 昨天听了一个同事关于程序调试的讲座,有很多东西都是自己知道的,但也学到了几个知识点,其中有一个有趣的小问题,正好是之前困惑我的,同事说类的弱引用和强引用,我觉得这个词好像不是用在这个场合,感觉弱包含和强包含更合适些,可查了一下没有这个叫法,我还是直接说#include和class包含的区别吧。<br /> 昨天主要讲了程序调试方法和怎么预防bug,其中调试方法学到了两个自己以前没用过的,一个就是条件断点,我们调试时加断点单步调试,但有时一个很大的循环,我们只想单步跟踪最后几次循环,
2010-08-14 14:58:00 4522 3
原创 brew 平台下的日期时间控件实现
这几天用要在brew下写个时间控件,每想到写起来这么痛苦,暂时做出来了,简单写一下自己遇到的问题。 其实这种控件用几个text和button控件很好组合出来,但考虑时间和效率问题,还是决定用系统提供的,没想到用系统提供的花费了更长的开发时间,浪费我近三天时间在那里折腾,罪过。 系统提供了AEECLSID_JulianDateWidget and AEECLSID_JulianTimeWidget 两个类分别实现时期和时间控件,代替了老版本中 IDateCtl的接口,这两个类用法几乎一样,如果仅仅
2010-08-01 12:14:00 1352 2
原创 恢复VS2005配置
上次卸载了sql server 2005后,我的VS2005里很多配置都发生了改变,有些自己试着改了回来,但是有些很难找到在哪修改。一个常碰到的就是我写程序时习惯直接点"start debugging",如果有错误的话,程序会终止运行,报出程序错误,此时会跳出一个对话框,提示是否运行上次生成文件。而现在成了没有提示,直接运行上次生成的程序,如果没有生成程序,则会提示“系统找不到指定文件”,很烦人。还有编译等的快捷键也被改了,找同事帮我调程序时,别人总是按错键,我重装了VS2005都不行,后来
2010-07-15 16:59:00 800
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人