随笔分类 - Window应用程序
主要包括一些Window系统上进行的变成学习笔记及思考.
摘要:DirectDraw基础篇(学东西还是基础的好哦!)第一节 DirectDraw简介Grubers的一个观点是DirectDraw“只是一个bltting发动机”。这是相当准确的,但却太简化了。更准确地讲,DirectDraw是一个可以提供软件仿真测试的独立于硬件设备的bltting发动机。DirectDraw的主要用途是尽可能快、尽可能可靠并且尽可能连续地将图形考贝到视频...
阅读全文
摘要:小知识:RGB与YUV----摘自《DirectShow实务精选》 作者:陆其明计算机彩色显示器显示色彩的原理与彩色电视机一样,都是采用R(Red)、G(Green)、B(Blue)相加混色的原理:通过发射出三种不同强度的电子束,使屏幕内侧覆盖的红、绿、蓝磷光材料发光而产生色彩。这种色彩的表示方法称为RGB色彩空间表示(它也是多媒体计算机技术中用得最多的一种色彩空间表示方法)。根据三基色原理,任意...
阅读全文
摘要:1、将Invalidate()替换为InvalidateRect()。 Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而InvalidateRect()仅仅重画Rect 区域内的内容,所以所需时间会少一些。虫虫以前很懒,经常为一小块区域的重画就调用Invalidate(), 不愿意自己去计算需要重画的Rect,但是事实是,如果你确实需要改善闪烁的情况,...
阅读全文
摘要:很多人对Volatile都不太了解,其实Volatile是由于编译器优化所造成的一个Bug而引入的关键字。 int a = 10; int b = a; int c = a; 理论上来讲每次使用a的时候都应该从a的地址来读取变量值,但是这存在一个效率问题,就是每次使用a都要去内存中取变量值,然后再通过系统总线传到CPU处理,这样开销...
阅读全文
摘要:伟大的Bill Gates 曾经失言: 640K ought to be enough for everybody — Bill Gates 1981 程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。 1、内存分配方式 内存分配方式...
阅读全文
摘要:如果一个类不会用作基类,就不需要使用任何虚函数,因为使用虚函数会增加程序的开销。但是,如果要作为基类,为维护完整性,就需要使用虚函数,让子类定义自己的具体行为。 所以基本的一条是,无故的声明虚析构函数和永远不去声明一样是错误的。 实际上,很多人这样总结:当且仅当类里包含至少一个虚函数的时候才去声明虚析构函数。 至于虚析构函数,C++语言标准关于这个...
阅读全文