摘要:
最近在把一个Fortran的程序封成模块整合进一个C++的平台中。平生第一次做fortran,也算是第一次正二八经的做二进制的混合开发。简单写一些,算为前一段工作做个总结。。。Fortran90与C++的整合,可以基于静态链接。就是都生成obj,然后link在一起。当然也可以是动态链接的,把Fortran打成dll,然后在C++中调用(windows下...)。当然,这都不会是本质性的问题,你可以... 阅读全文
摘要:
前段时间陆陆续续读完了pangba老大力荐的Why Programs Fail,一本关于程序调试的大作。给人最大的启发就是调试是一门科学而不是艺术。我从来不知道,原来调试还有那么多的千奇百怪的工具,可以写那么多的数学推导。从小学开始我们就开始了解,作文没写好你可以说老师欣赏不了,而数学题算错了只能怪自己混的不够到位。于是我们总是很主观的把调试当成艺术来看待,调试能力的高低不仅取决大量经验的积累也是... 阅读全文
摘要:
刚在TopLanguage上发的一帖,回顾自己的编程之路。所有人的贴在这里,推荐大家看看。我学程序的路也走得比较诡异,不是那种扎扎实实一步一步往上走的。高中毕业到大一,开始淘腾程序,基本觉得好玩的都去学学,主要是VB,混着还有Html,ASP,ActionScript等等之类。总之是杂七杂八,每样沾点皮毛。这算是第一个开头阶段。由于本科学的是飞行器动力(研究导弹发动机...),只能自己选一些计算机... 阅读全文
摘要:
2月14日情人节,一向善于挑日子的Google在其Android官方Blog上公布了新版AndroidSDK发布的消息(根据网站上的日期,SDK应该是2月12日就更新了,看来Google的公关做得确实很不勤劳...)。这次发布的SDK版本号为M5,理论上这应该会是第一轮比赛初赛前最后一个版本了,在此前,为了大家更好适应新的SDK,Google将第一轮比赛初赛的结束日期顺延了将近一个半月,这意味着此... 阅读全文
摘要:
有了framework后,我们不用面对赤裸裸的OS API,做一些重复而繁杂的事情。但天下没有免费的午餐,我们还是需要学会高效正确的使用不同的framework,很多处理某一特定问题的手法在不同的framework中,用起来都会有所不同的。在Android中,下层是Linux的核,但上层的java做的framework把这一切封装的密不透风。以消息处理为例,在MFC中,我们可以用PreTransl... 阅读全文
摘要:
从1月22日起,微软通过Update推送SliverLight。从2月12日起,微软通过Update把所有的IE浏览器都强制升级为IE7。IE8快速前行在标准话的路上,并将超越ff,成为更“标准”的象征。这意味着什么呢? 阅读全文
摘要:
Android做到现在。开始感觉到Android确实还是太年轻。系统本身好不够成熟,相关文档更是少的可怜。在Android的旅途中到处是暗坑陷阱,掉进去摔得半死,还只能靠自己琢磨着爬出来。想在大部分工作集中在了定义一套ContentProvider以及上层的显示控件上。一个ContentProvider向外提供的接口十分有限,但就是这几个东西你要表征出正确(标准就是和系统ContentProvid... 阅读全文
摘要:
最近读了TopLanguage上关于编程风格的一些讨论,拜读了下云风老大的两篇佳作。感触良多。做为一个“码头工人”,每天都在coding,不由会想,我们的脑细胞和陪mm的时间都耗在了哪行代码上。诚然,在C++这样的语言中,我们大把的时间花在了等待编译以及做一些繁杂而和coding无直接关联的事情。Toplanguage上有老大说,他的C++生涯25%在等待编译,5%在各种字... 阅读全文
摘要:
本来没想这么快就继续参加一个Match的。但一试水发现有戏,就一直做了下去。最高做到35,稍微懒散了几天,倒数第二天掉到了50。最后一天发挥各种猥琐手段,在unsolve的题上扒下来一些分数,以43名进入第二轮。虽然晋级,同样不开心,因为很多题没有搞定。看了别人的solutions,从技巧和模式上又发现许多值得一说的地方。但,也许是晋级了,也许是做的我郁闷不已,没觉着再有必要去总结那些技巧了。也许... 阅读全文
摘要:
LeaderBoard 1 Rac 47687 Poland Politechnika Krakowska 2 Jedi_Knight 47326 Russia Moscow State University 3 XarN 46798 Poland AGH University of Science and Technology 4 chokudai 46085 Japan Senior High... 阅读全文
摘要:
Leader Broad rank match 1 match 2 1 PL Rac RU Jedi_Knight 2 RU Jedi_Knight JP TaiTai 3 PL XarN JP Yendor 4 JP chokudai CN mstlq 5 NO Eirik Reksten RU Fly 6 HU szsz SI umnik 7 LT FloppyCat UA P@VeL 8 P... 阅读全文
摘要:
Android的界面显示同样也是基于控件的。通常是用View(包括ViewGroup)控件配上XML的样式来做的。具体细节不想说了,可以参考Samples里的ApiDemos/View,和View的Doc,以及Implementing aUI这篇Doc。其他还有很多,感觉算是SDK讲述的最多的内容。从控件的使用上,和网页的设计类似,尽量用parent_width之类的抽象长度,用Theme来做风格... 阅读全文
摘要:
今天爬到wikipedia上看了下Android这个词相关的故事。呵呵。很有意思。基本就是一个常出现在科幻小说中的具有人的能力的小机器人。Google取这个名字应该是希望安装了Android的手机像一个活生生的人一样成为你必不可少的一个帮手。不过这个名MS不是Google取得。而是2005收购Android平台前身的时候直接带来的。So。。有钱还是真无敌。。。。 阅读全文
摘要:
在前面写Android的ContentProvider时候,可以看到那是基于观察者模式的一个消息传递方法。每一个Cursor、ContentResolver做为一个小的注册中心,相关观察者可以在这个中心注册,更新消息由注册中心分发给各个观察者。而在MFC或Winform中,都会形成一个消息网,让消息在网中流动,被各节点使用、吃掉或者在出口死掉。相比之下,我个人觉得基于Intent的Android核... 阅读全文
摘要:
Android的数据(包括files,database等...)都是属于应用程序自身,其他程序无法直接进行操作。因此,为了使其他程序能够操作数据,在Android中,可以通过做成ContentProvider提供数据操作的接口。其实对本应用而言,也可以将底层数据封装成ContentProvider,这样可以有效的屏蔽底层操作的细节,并且是程序保持良好的扩展性和开放性。ContentProvider... 阅读全文
摘要:
如果你还不知道google的重磅炸弹Android(中文意思是机器人...感觉google取名字的天赋全部花在google这个词上了...)是什么,你可以看一下这里。如果你觉得挺没有意思,再看一下这里。如果还觉得不好玩,那下面的东西就不需要看了。。。对我来说,Android还是很有吸引力的,不然一个MS技术的忠实走狗也不至于一下就投入java的怀抱。至于为什么?恩,等我有八卦精神的时候再使劲的侃。... 阅读全文
摘要:
前段时间看了一些关于GC的论文、书和源码。源码指的是Boehm的保守GC ,论文也主要是围绕这个GC相关的算法,另外还包括一些survey和性能分析的论文。而其他关于GC的一些东西主要是从其他两本书上看来,一本是谢之易老大翻译的垃圾收集 ,目前唯一一本关于GC算法的书,还有就是仔细阅读了C# via CLR 中关于.net GC的部分。原本想做个GC算法上的总结,但前几天在实验室做了个关于GC i... 阅读全文
摘要:
第一次参加Imagine Cup的算法比赛。做到最后有些力不从心,基本放弃。最终做到总分接近3.2k,位列87。 最初参赛的目的很简单,为自己看高大爷的书提供点动力。没想到的是Herbert真不是白给的,大把时间砸了上去还是没搞定(大爷的书一眼没看*_*)。Match 1 结束后,看了一下名列前茅的小N孩们的solutions。OMG,不由不赞,很有想法。 于是决定找时间参加Match3或Matc... 阅读全文
摘要:
在做一个MFC软件的时候有一个这样的需求,就是要有类似与AutoCad的命令输入框,如下图所示:本着不重写已有功能的原则,在MFC中发掘了一圈,没发现有可用的现成控件,上网搜了一下,发现有人做过,但竟然还收费出售,so faint,只能自己动手做一个。其实思路还是蛮简单的,就是放个Edit控件处理它的键盘输入事件,防止删除之前的记录和提示信息,还要处理结束命令,比如回车、空格之类的。主要有以下几个... 阅读全文
摘要:
在VC++中有着一大把字符串类型。从传统的char*到std::string到CString,简直是多如牛毛。期间的转换相信也是绕晕了许多的人,我曾就是其中的一个。还好,MS还没有丧失功德心,msdn的一篇文章详细的解析了各种字符串的转换问题,链接如下:http://msdn2.microsoft.com/zh-cn/library/ms235631(VS.80).aspx。参照这篇文章,可以搞定... 阅读全文
摘要:
非模态对话框比模态对话框更难使用这是众所周知的,这是由于模态对话框运行时,阻塞了其父窗口的消息循环,使其能自成一派,所以能够怡然自得。但非模态对话框只相当于一个由父窗体创建的一个同级的Hwnd,就像一个长大了的孩子,可以和父母并驾齐驱了,需要父母管又不能管的太厉害,其资源管理、通信都会比模态的更为复杂。很多时候,能用模态对话框的情况下,都会用模态的。虽然Copper 老先生指着鼻子苦口婆心的教导了... 阅读全文
摘要:
在C++中经常会涉及到处于不同头文件的类互相引用的情况,有时候头文件引用(include)会搞得很乱,导致报一堆的错。其实遵循一定规则,可以避免大部分的混乱。首先,要对头文件进行处理,保证不会出现重定义的错误。这个应该每个人都会,通常有两种做法:1. 在.cpp文件中添加保护,比如在.cpp文件中添加:#ifndef _XX_H_#define _XX_H_#include "xx.h"#endi... 阅读全文
摘要:
有时候我们经常把对话框和视图结合起来,做成AutoCAD命令输入框、PhotoShop浮动框之类的效果。但很奇怪的是我看过的MFC的书上都没有特别说明过这样的工作该如何去做,我刚接触MFC的时候都是通过控制非模态对话框来模拟的,后来才知道这些工作是通过CControlBar的派生类来完成的。比如CDialogBar就是加载一个已有的对话框资源,嵌入Frame中,和视图配合使用。其实知道了有这么个东... 阅读全文
摘要:
做一个MFC程序的时候碰到一个需求。就是需要根据定制情况,动态生成菜单,菜单的具体结构和信息是之前不知道的(因此不能利用工具构造),点击不同类型的菜单会触发特定的一类事件(需要动态绑定事件)。这种需求实际是蛮不BT的,很多场合下都可能会有,用C#写了个Demo花了不到半个小时。但转到MFC下来写,就费尽周折。其实这个问题代表了在MFC中动态创建资源绑定事件的一般性问题,所以总结一下。动态创建菜单需... 阅读全文
摘要:
前人在CSDN总结的,曾经帮助过我,整理总结一下,希望也能帮助一下别人。 获得CWinApp 获得CMainFrame ... 阅读全文