本站首页    管理页面    写新日志    退出


«July 2025»
12345
6789101112
13141516171819
20212223242526
2728293031


公告

☆★☆★☆★☆★☆★☆
生活的点点记录,以及一些体会...........

喜欢是淡淡的爱,爱是深深的喜欢.

时间会见证一切.......................

欢迎大家指出错误,共同进步..........

期待中..............................

☆★☆★☆★☆★☆★☆


我的分类(专题)

日志更新

最新评论

留言板

链接

世纪音频

 

 


Blog信息
blog名称:
日志总数:162
评论数量:312
留言数量:0
访问次数:939667
建立时间:2005年5月17日




[读书笔记]写程序是一种态度(一)strcmp
文章收藏

oceanblue 发表于 2009/4/27 15:37:01

写程序正如做人,是一种态度。在写一个商业级的程序,从写代码的层次来说是否遵守默认的代码风格(code convention)?是否遵循简单、易读和效率?是否防范了预期的错误?是否检查了内存泄漏?是否考虑会有多线程重入?等等。从设计的层次来说是否引入了软件工程的思想?是否采用了OO的模式分析?是否使用UML来主导了整个流程?是否考虑单元测试和集成测试的QA同步?是否定期生成


阅读全文(3918) | 回复(1) | 编辑 | 精华 | 删除
 


[读书笔记]mfc小结
原创空间

oceanblue 发表于 2009/4/6 22:26:44

两个都要设置才能去掉help button: Sheet:    CPropertySheet bb;  bb.m_psh.dwFlags |= PSH_NOAPPLYNOW|PSH_HASHELP;
   bb.m_psh.dwFlags   &=   ~PSH_HASHELP; Page:     m_psp.dwFlags   &=   ~PSP_HASHELP;


阅读全文(2551) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]解决窗口刷新闪烁
文章收藏

oceanblue 发表于 2009/4/5 19:20:33

一般的windows 复杂的界面需要使用多层窗口而且要用贴图来美化,所以不可避免在窗口移动或者改变大小的时候出现闪烁。 先来谈谈闪烁产生的原因 原因一:
如果熟悉显卡原理的话,调用GDI函数向屏幕输出的时候并不是立刻就显示在屏幕
上只是写到了显存里,而显卡每隔一段时间把显存的内容输出到屏幕上,这就是刷新周期。 一般显卡的刷新周期是 1/80秒左右,具体数字可以自己设置的。 这样问题就来了,一般画图都是先画背景色,然后再把内容画上去,如果这两次操作不在同一个
刷新周期内完成,那么给人的视觉感受就是,先看到只有背景色的图像,然后看到画上内容的图像,
这样就会感觉闪烁了。 解决方法:尽量快的输出图像,使输出在一个刷新周期内完成,如果输出内容很多比较慢,那么采用
内存缓冲的方法,先把要输出的内容在内存准备好,然后一次输出到显存。要知道一次API调用一般可以
在一个刷新周期内完成。 对于GDI,用创建内存DC的方法就可以了 原因二:

阅读全文(4662) | 回复(1) | 编辑 | 精华 | 删除
 


[读书笔记]GetWindowRect、GetClientRect、ScreenToClient与ClientToScreen
文章收藏

oceanblue 发表于 2009/4/4 11:50:45

GetWindowRect是取得窗口在屏幕坐标系下的RECT坐标(包括客户区和非客户区),这样可以得到窗口的大小和相对屏幕左上角(0,0)的位置。 GetClientRect取得窗口客户区(不包括非客户区)在客户区坐标系下的RECT坐标,可以得到窗口的大小,而不能得到相对屏幕的位置,因为这个矩阵是在客户区坐标系下(相对于窗口客户区的左上角)的。  
用GetClientRect返回的RECT结构上左为零, 右下分别对应客户区的宽度和高度; ScreenToClient把屏幕坐标系下的RECT坐标转换为客户区坐标系下的RECT坐标.     
我们对同一个窗口先GetWindowRect取得一个RECT,再用ScreenToClient转换到客户坐标系。
然后GetClientRect取得一个RECT,再用ClientToScreen转换到屏幕坐标系。
显然,GetWindowRect取得的矩阵不小于GetClientRect取得的矩阵。因为前者包含了非客户区,而后包括了客户区。    对GetWindowRect取得的矩

阅读全文(5711) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]C#:代表(delegate)和事件(event) (转)
文章收藏

oceanblue 发表于 2009/3/22 21:01:06

  代表(delegate):  它是C#语言里面的函数指针,代表可以指向某一个函数,在运行的时候调用这个函数的实现。下面来看看它的实现步骤: 声明一个delegate对象。 实现和delegate具有相同参数和返回值的函数实现(可以是静态和非静态的)。 产生一个delegate对象的时候,把你刚刚实现的函数作为参数传给他的构造函数。 请看下面例子: using System;
using System.Collections.Generic;
using System.Text; namespace UsingDelegate
{
    public delegate void MyDelegate(string mydelegate);//声明一个delegate对象

阅读全文(1585) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]enum类型的本质
文章收藏

oceanblue 发表于 2009/1/17 20:30:58

                            enum类型的本质
    至从C语言开始enum类型就被作为用户自定义分类有限集合常量的方法被引入到了语言
当中,而且一度成为C++中定义编译期常量的唯一方法(后来在类中引入了静态整型常量)。
    根据上面对enum类型的描述,到底enum所定义出来的类型是一个什么样的类型呢?作为
一个用户自定义的类型其所占用的内存空间是多少呢?使用enum类型是否真的能够起到有限
集合常量的边界约束呢?大家可能都知道enum类型和int类型具有隐示(自动)转换的规则,
那么是否真的在任何地方都可以使用enum类型的变量来代替int类型的变量呢?下面会逐一
回答这些问题。

阅读全文(2145) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]qt study
文章收藏

oceanblue 发表于 2008/12/19 15:42:23

Meta-Object System
Qt's Meta-Object System provides the signals and slots mechanism for inter-object communication, run-time type information, and the dynamic property system. The Meta-Object System is based on three things: The QObject class provides a base class for objects that can take advantage of the meta-object system.The
阅读全文(1930) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]C/C++ 字符串处理函数
文章收藏

oceanblue 发表于 2008/11/1 22:45:54

C: char st[100];
1. 字符串长度
   strlen(st); 2. 字符串比较
   strcmp(st1,st2);
   strncmp(st1,st2,n);   把st1,st2的前n个进行比较。 3. 附加
   strcat(st1,st2);
   strncat(st1,st2,n);   n表示连接上st2的前n个给st1,在最后不要加'\0'。 4. 替换
   strcpy(st1,st2);
   strncpy(st1,st2,n); n表示复制st2的前n个给st1,在最后要加'\0'。 5. 查找
    strchr(st,ch)   ch为要找的字符。 <

阅读全文(3793) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]软件编程规范和范例
文章收藏

oceanblue 发表于 2008/5/14 13:15:29

 目  录

阅读全文(2109) | 回复(0) | 编辑 | 精华 | 删除
 


[读书笔记]数据结构
文章收藏

oceanblue 发表于 2008/5/14 9:12:27

第一章 概  论 1.数据:信息的载体,能被计算机识别、存储和加工处理。 2.数据元素:数据的基本单位,可由若干个数据项组成,数据项是具有独立含义的最小标识单位。 3.数据结构:数据之间的相互关系,即数据的组织形式。
它包括:1)数据的逻辑结构,从逻辑关系上描述数据,与数据存储无关,独立于计算机;
2)数据的存储结构,是逻辑结构用计算机语言的实现,依赖于计算机语言。
3)数据的运算,定义在逻辑结构上,每种逻辑结构都有一个运算集合。常用的运算:检索/插入/删除/更新/排序。 4.数据的逻辑结构可以看作是从具体问题抽象出来的数学模型。数据的存储结构是逻辑结构用计算机语言的实现。 5.数据类型:一个值的集合及在值上定义的一组操作的总称。分为:原子类型和结构类型。 6.抽象数据类型:抽象数据的组织和与之相关的操作。优点:将数据和操作封装在一起实现了信息隐藏。 7.

阅读全文(3257) | 回复(0) | 编辑 | 精华 | 删除
 


« 1 2 3 4 5 »



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 1.234 second(s), page refreshed 144751547 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号