`
freesoftman
  • 浏览: 314402 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
Windows显示设备的属性,共有下面几种:位图、画刷、字体、画笔、区域。如果要设置它们到当前设备里,就需要使用SelectObject函数,比如上面介绍的字体设置,就会用到这个函数。当你创建一个位图时,这时Windows就会在内存里分配一块内存空间,用来保存位图的数据。当你创建字体时,也会分配一块内存空间保存字体。如果程序只是分配,而不去删除,就会造成内存使用越来越多,最后导到Windows这幢大楼倒下来。如果你忘记删除它,就造成了内存泄漏。因此,当你创建显示设备资源时,一定要记得删除它们啊,否则运行你的程序越长,就导致系统不稳定。记得使用DeleteObject函数去删除它们,把占用的内存 ...
现在的世界流行图形界面,而不是文字,因此在软件开发里,肯定需要画图的,比如简单地画线,画一些比较特别的图形。比如让你画一个走动的时钟,就需要不断地画秒针、分针等等。MoveToEx是用来移动当前画笔的位置,LineTo是用来画直线的函数,其实在计算机图形里的直线显示是使用光栅图形学里的原理。 函数MoveToEx和LineTo声明如下:WINGDIAPI BOOL WINAPI MoveToEx( __in HDC hdc, __in int x, __in int y, __out_opt LPPOINT lppt);hdc是当前设备的句柄。x是X轴的位置,水平方向,一般原点是在屏幕左上角的位 ...
文章来自于:http://hi.baidu.com/shangxing214/blog/item/4b1fec22d2eacd4cac34de6d.html   正文:   ------------------------------------------------------------------------------------------------------------------- 位图信息头BITMAPINFOHEADER,也是一个结构,其定义如下: typedef struct tagBITMAPINFOHEADER{ DWORD biSize; LONG bi ...
函数GetTextMetrics可以获取一个字体文本度量并将它放入一个类型为TEXTMETRIC的数据结构中,该结构如下所示: typedef struct tagTEXTMETRIC { // tm     LONG tmHeight;                  //字符高度    LONG tmAscent;                  //字符上部高度(基线以上)    LONG tmDescent;                 //字符下部高度(基线以下)    LONG tmInternalLeading;         //由tmHeight定义的字符高度的顶部 ...
 首先我们需要明白输入法是什么东西。目前常用的输入法基本上有两种类型:外挂式(如早期的万能五笔)及输入法接口式(Input Method Editor-IME)。外挂式比较简单,就是一个exe文件,通过模拟一些Windows输入消息来给当前处于 ...
作者联系方式:http://blog.csdn.net/absurd 作者联系方式:李先静 <xianjimli at hotmail dot com>   知其然也知其所以然,是我们《大内高手》系列一贯做法,本文亦是如此。这里我不打算讲解如何使用boundschecker、purify、valgrind或者gdb,使用这些工具非常简单,讲解它们只是多此一举。相反,我们要研究一下这些工具的实现原理。   本文将从应用程序、编译器和调试器三个层次来讲解,在不同的层次,有不同的方法,这些方法有各自己的长处和局限。了解这些知识,一方面满足一下新手的好奇心,另一方面也可能有用得 ...
Java 调试器 (JDB)。 最重要的是 JDB 可以免费获取并且是平台独立的。其缺点是它只有命令行格式,一些开发人员认为这很原始,而且难以使用。一些 IDE 已经将 GUI 界面构建到 JDB 调试 API(如 Jikes)。JDB 是 JDK 安装的一部分。它在 Java 2 平台中得到了增强。 现有的所有调试器都可分为两大类。第一类调试器利用处理器提供的调试工具,而第二类调试器自行仿真处理器并完全控制所调试程序的执行过程。 程序是既不能检测到也不能绕过高质量仿真调试器的。可是,在本书写作时还不存在功能完备的针对奔腾处理器的仿真器,而且也不太可能会很快出现。 但是,是否有必要开发这类仿 ...
最近打算在eclipse工程中使用ant, 发现ant工具还是很不错的。 比eclipse灵活多了。 这篇文章是介绍有关ant中,  xml的配置详细说明。来自与http://liangyuliang.bloghome.cn 讲解的很详细。 如果大家有什么好的资料, 希望能共享一下!     ----------------------------------------------------以下是具体文档-------------------------------------------   <!--Ant(another neat tool---另一个整洁的工 ...
来自于(http://blog.csdn.net/liyong1115/archive/2008/01/18/2051253.aspx)   结构javac [ options ] [ sourcefiles ] [ @files ]参数可按任意次序排列。options 命令行选项。 sourcefiles 一个或多个要编译的源文件(例如 MyClass.java)。 @files 一个或多个对源文件进行列表的文件。 说明javac有两种方法可将源代码文件名传递给 javac: 
本文地址:http://qzone.qq.com/blog/4796193-1216082096 <!--文章内容开始--> 我要承认我想到的这个问题实在是太难以回答了,不过最近一直在想一些事情,涉及到类似魔兽世界这样3D网游的制作原理和制作成本,想到了不妨继续想下去,顺便挂在空间里,看看有人能给我别的思路没有。 首先,象暴雪这样伟大这样有技术实力这样资金雄厚这样创意无限的一个公司,游戏引擎这种核心部件肯定是自己开发的,去购买商业化的游戏引擎这样的行为,国内很多垃圾公司倒是很擅长,但显然不是暴雪大神的所作所为。估计游戏引擎和服务器端可能是C/asm,因为这里性能 ...
该文章来自于http://www.cppblog.com/kevinlynx/archive/2008/04/01/45952.aspx Author : Kevin Lynxemail  : zmhn320@163.com   什么是CRC:CRC的英文全称为Cyclic Redundancy Check(Code),中文名称为循环冗余校验(码)。它是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强,在通信领域广泛地用于实现差错控制 ------------------- 以下是原文: What's CRC ? 简而言之,CRC是一个数值。该数值被用于校验数据的正确性。 ...
一、避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快。例子:import java.util.Vector;class CEL {    void method (Vector vector) {        for (int i = 0; i < vector.size (); i++)  // Violation            ; // ...    }}更正:class CEL_fixed {    void method (Vector vector) {     ...
CCmdTarget实现com接口的时候,在afxdisp.h头文件中一些宏的定义#define BEGIN_INTERFACE_PART(localClass, baseClass) \class X##localClass : public baseClass \\是什么作用:续行符:表示在一行中。因为宏只能在一行中定义本来这个宏定义很容易理解的,但是这里多出个X##,我真没见过这种用法,不晓得它是什么用意。后来问了几个朋友也都不知道。你知道么?也许你也不知道~呵呵,最后我还是找到了相关的资料,解读了这个define,还顺便认识了另外两个不常用的define#define Conn(x,y) ...
1,Font类的特点: ①没有构造函数 ②是final类型的类 ③没有color属性,只有三性:. 2,特点决定用法:不能被继承,不能被实例化.   3,关于字体的知识:字体的形状-----face,字体的风格----Style,字体的大小---size
最近刚刚开始学习C 我以前主要的工作是做Java的开发。 由于最近在做KVM的开发,需要写native方法。 不得不学习C,在这个过程中我发现了一些经典 的著作。非常值得收藏! 目前拥有的书籍有《C与指针》,《The C Programming Language》(C程序设计语言)   打算收藏的《C专家编程》,《C陷阱与缺陷》
Global site tag (gtag.js) - Google Analytics