- 博客(12)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 软件代码设计零碎杂想-3
基于现在的计算机架构设计,也基于这个世界的时空规律,现阶段,就我所知,对于一个线程的执行,在cpu中,是一个指令一个指令执行的,也就是说,cpu是按照顺序来读取机器指令,在某时刻,只有一条指令被执行。我还没有发现过在同一个时刻,同一个线程里的多条指令被多个地方同时执行,也没有发现cpu在执行指令的时候,不按照指令顺序,东一条西一条的去乱七八糟的执行。为什么扯这些闲淡?我只想引出高级语言中的3类流程控制结构,无论哪一种流程控制结构,最终在cpu上,都是乖乖的一条指令一条指令的执行,并没有什么面向对象,面向过程
2010-07-30 12:08:00
474
原创 不同codepage文件转换操作实录
因有一芬兰语项目,文件以ANSI方式保存,内有注释,有芬兰语。在中文环境下打开,与GBK编码冲突,出现乱码。使用doxygen进行文档化,如果输入的编码采用GBK,则提示错误。因我想用中文对文件进行注释后用doxygen进行文档化,所以需要将芬兰语变化成GBK编码。 在csdn求助,得到不少回复。最终的解决方法记录在案,以备后查。 我尝试了方案如下: cattycat的方案,因为输出还是有不识别的文字:// Index 0 = Marginaalit pll?pois,其中的?即为不识别的。当然,这是我的经
2010-07-29 11:36:00
1232
原创 子窗口与父窗口的消息关系网-2
下面是得自MSDN中关于Common Controls的说明,具体路径为:ms-help://MS.MSDNQTR.v80.en/MS.MSDN.v80/MS.WIN32COM.v10.en/shellcc/platform/commctls/common/common.htm#Using_Common_Control 可以发消息给通用控件来通知控件做某事或者向控件要某事。 当控件发生某事件,比如用户输入,会向父窗口发WM_NOTIFY消息。请自行查阅WM_NOTIFY和NMHDR。 只是可惜的是,EDIT
2010-07-27 20:10:00
1636
原创 子窗口与父窗口的消息关系网-1
windows系统下面,每一个窗口都是一个WNDCLASS的实例。而一个WNDCLASS都有一个窗口过程(WndProc)与之对应。这不管是我们自己创建的WNDCLASS窗口还是windows标准窗口,比如button,edit等。Edit控件功能强大,能够处理字符输入删除编辑等,显然是windows系统实现的。对于Edit控件的窗口过程函数,我们是无法得到的(当然排除类似hook等方法)。由此,得到一个结论: 结论1:Edit,Button等windows标准窗口控件(The standard Micro
2010-07-27 19:08:00
2822
原创 软件代码设计零碎杂想-2
想到一个极端的例子,主要是想说如何提取变化的东西和设计的取舍。 先看一个题目:考试分数为百分制,请将给定的分数进行分类,分类规则是 [0,60) 不及格 [60,70) 合格 [70,80) 良好 [80,90) 优秀 [90,100] 杰出 嗯,题目简单,做法也很简单,如下,简便起见,假设分数为整形: char* get_result(int x) { if ( x result(); } 有的人说,有的时候,用if只是简单判断下参数是否正确而已,可以像上面进行抽
2010-07-23 19:49:00
664
1
原创 Step by step——WinX开发入门教程-6
自定义窗口类(WNDCLASS)程序 对于对话框模板资源的程序比较简单,因为windows系统帮我们做了很多事情,真的是很多事情,想想我们自己手工用代码动态生成对话框上的一些控件试试看,对话框程序基本工作都交给了windows窗口系统了。我们只需要调用一个函数DialogBox,指定对话框资源ID,窗口过程,OK了。Windows窗口系统自动帮我们从可执行文件的资源节读取数据,帮我们创建窗口上的控件,排列位置。更重要的是,对于模态对话框,我们不需要写消息循环的处理代码。所以前面的例子里,代码都非常简单。对于
2010-07-23 17:11:00
654
原创 软件代码设计零碎杂想-1
team内有同事对设计模式的兴趣,勾起了我对软件代码设计的一些遐想,感觉有些话要说,要记录,所以就有了这系列文章。 接触到软件程序开发的人,肯定对程序=算法+数据不陌生。我记得这句话,但不记得说这话的人,当初,我更不理解这句话。现在,我好像有点明白了。 先从MVC模式说起。这个模式当然很复杂,涉及到的角色互相牵连。但是,这个模式,就是程序=算法+数据的一个体现。为什么这么说? 视图是表现数据的角色。如何表现数据,如何处理数据?涉及到算法。视图只负责算法,它不关心数据如何变化,是否变化,它只读取数据,它老老实
2010-07-23 11:33:00
476
原创 Step by step——WinX开发入门教程-5
利用winx的DDX机制得到,设置、得到edit控件内容 目的 利用DDX便利性,进行edit控件内容的设置和获取 原理 WTL提供了一个模板类来单独处理DDX机制,该类为: // CWinDataExchange - provides support for DDX template class CWinDataExchange Winx自该类继承了一个新类: template class WinDataExchange : public WTL::CWinDataExchange 某对话框类如果要
2010-07-23 11:27:00
533
原创 Step by step——WinX开发入门教程-3
修改使得入口函数为WinMain 目的 去掉运行时出现的控制台窗口,将程序入口函数改为WinMain 步骤 修改main入口函数为WinMain,如下: int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { 注意
2010-07-23 11:25:00
574
原创 Step by step——WinX开发入门教程-4
利用winx的command宏处理按钮事件 目的 利用winx的便利性进行按钮事件处理 原理介绍 Winx提供了以下几个宏来处理菜单,控件等的命令消息 WINX_CMDS_BEGIN WINX_CMD WINX_CMDS_END 用法 在窗口类定义中,如这样写: WINX_CMDS_BEGIN(); WINX_CMD(IDC_TODO, OnCmdTodo); WINX_CMD(ID_HELP_ABOUT, OnCmdAbout); WINX_CMDS_END(); 宏WINX_CMD
2010-07-23 11:25:00
473
原创 Step by step——WinX开发入门教程-2
基于资源的对话框 目的 能够显示一对话框。哪怕什么事情都不能做。 步骤 增加资源文件到工程中 通过VC2005的Project菜单,增加资源文件,VC2005将自动创建资源文件Helloworld.rc和对应的resource.h文件。 新增对话框 打开helloworld.rc,新建一个对话框,ID为IDD_DIALOG1 修改main.cpp,内容为: #include #include #include "resource.h" class CMyDialog : public winx:
2010-07-23 11:24:00
529
原创 Step by step——WinX开发入门教程-1
预先约定: 我的Winx安装路径为:I:/opensource/gui/WinX/WinX,以后用%WINX_ROOT%代替之 我的开发环境:VC2005 读者具备SDK开发经验。具备基本的C++使用经验。 检查开发环境 目的 检验winx是否在VC2005中设置正确,主要是包含路径是否正确设置 步骤 新建一个空的基于控制台的工程。 在该工程中新增加一个main.cpp。内容为: #include #include int _tmain(int argc,TCHAR* ar
2010-07-23 11:23:00
622
Windows软件部署助手
2013-08-08
windows nt file system internal 第九章中文
2012-07-30
一次添加一个数据,新数据将影响已有数据分析结果,如何进行设计?
2014-12-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人