- 博客(26)
- 资源 (5)
- 收藏
- 关注
原创 细读《Effective C++》之十四
Chapter 8. Customizing new and delete正如C#、JAVA声称自己的内置“垃圾回收能力”一样,C++则以其高效的“手动回收”著称。Scott提到heap资源在多线程编程时的访问问题,引起了我的兴趣。Item 49 - 52条款49:Understand the behavior of the new-handleroperator new失败时将执
2007-06-21 07:02:00
1474
1
原创 XML初探(一)
最近又开始玩OGame了,巨耗时间,就想写个工具。OGame里面需要配置的数据量比较大,如果用单纯的text写的话,难以规范,如果使用传统的ini文件的话,又想会不会表现力会差点(其实我也没有怎么用过ini)。因为工作原因,前段时间用XML写过配置文件,所以决定用XML写。工作中只是用TinyXml对XML文件进行读写,没有设计,而这次要自己设计结构,所以就想认真学习一下。刚好室友借了本《
2007-06-09 00:35:00
1151
原创 细读《Effective C++》之十三
Chapter 7. Templates and Generic Programmingtemplates的一个最重要的作用在于让很多原来在运行期的工作提前到编译期间完成。Item 41:templates和classes一样都是支持interfaces和polymorphics的,而且tempaltes支持implicit interfaces和compile-time polymorp
2007-06-05 16:08:00
1303
原创 细读《Effective C++》之十二
Chapter 7. Templates and Generic ProgrammingItem 43 - 44条款43:Know how to access names in templatized base classes下面的code是无法通过编译的:templatetypename Company>class LoggingMsgSender: public MsgSe
2007-05-30 00:39:00
1188
原创 细读《Effective C++》之十一
Chapter 7. Templates and Generic ProgrammingScott在Item 01里面就列举出了C++中的四种所谓“sublanguages”:C、OO C++、Template C++、STL。前面的Items一直评论的是OO C++,这一章则主要针对Template C++。Item 41 - 42条款41:Understand implicit i
2007-05-28 00:34:00
1246
原创 细读《Effective C++》之十
Chapter 6. Inheritance and Object-Oriented Design 这一章围绕inhertance和OOD进行讨论。Item 32:如果不是"is-a"关系,就一定不要用public inheritance,因为public inheritance就意味着base class的所有操作对于derived class完全适用。Item 33:尽量不让bas
2007-05-17 00:15:00
1220
原创 细读《Effective C++》之九
Chapter 6. Inheritance and Object-Oriented Design 条款36:Never redefine an inherited non-virtual functionclass B {public: void mf(); ...};class D: public B {public: void mf(); ... };D
2007-05-15 11:37:00
1188
原创 细读《Effective C++》之八
Chapter 6. Inheritance and Object-Oriented Design Item 35条款35:Consider alternatives to virtual functions当我辛辛苦苦用virtual functions提供了接口和缺省实现之后,Scott却提出考虑其它解法……需求是什么来着?GoF认为类行为模式Template Me
2007-05-12 01:14:00
1155
原创 一段代码:一九九七年世界编程大赛冠军作品
以下代码在debug之后会全屏显示一段3D动画。值得研究!据说是一九九七年世界编程大赛冠军作品,采用16进制机器码编写。e100 33 f6 bf 0 20 b5 10 f3 a5 8c c8 5 0 2 50 68 13 1 cb e 1f be a1 1 bf 0 1 e11b 6 57 b8 11 1 bb 21 13 89 7 4b 4b 48 79 f9 ad 86 e0 8b c8
2007-05-10 15:57:00
3693
1
原创 MFC中执行其它应用程序
答一个网友所问,想在MFC中直接执行其它应用程序,诸如debug、notepad等等:WinExec("debug.exe",SW_SHOWNORMAL); 以下是MSDN的内容:WinExec The WinExec function runs the specified application.Note This function is provided
2007-05-10 14:16:00
1789
2
原创 细读《Effective C++》之六
Chapter 5. ImplementationsItem 29 - 31条款29:Strive for exception-safe codevoid PrettyMenu::changeBackground(std::istream& imgSrc)...{ lock(&mutex); // acquire mutex (as in
2007-05-10 00:26:00
1128
原创 细读《Effective C++》之五
Chapter 5. Implementations如果说对于对象模型的深刻理解是为了更好地设计和声明,那么对于实现的斤斤计较则是为了更高的效率。Item 26 - 28条款26:Postpone variable definitions as long as possible不要过早地定义变量,直到真正需要它;对于非build-in对象,能够用copy constructor替代
2007-05-08 00:40:00
1105
原创 细读《Effective C++》之四
Chapter 4. Designs and Declarations什么样的接口是你应该提供给client的?或者,换句话说:什么样的接口是你希望被提供的?If an attempted use of an interface wont do what the client expects, the code wont compile; and if the code does co
2007-05-02 09:52:00
1112
原创 细读《Effective C++》之三
Chapter 3. Resource ManagementScott说:这儿的resource包括dynamically allocated memory、file descriptors、mutex locks、GUI objects、database connections和network sockets。“拿了我的给我还回来,吃了我的给我吐出来”……Item 13 - 17
2007-04-23 00:51:00
1137
原创 我的Fabonacci数列
今天在社区看到一个帖子《[送分]老的不能再老的题目了,斐波那契序列》 ,开始以为直接接分就OK了,结果进去一看:“如果你的方法比我想的还简单(或者和我一样),得所有分……”果然是天下没有免费的午餐,但想想还是写写看看。一个定势思维出来了,我大不了用汇编行不? mov ax, n ; ax for n mov bx, 1 ; bx
2007-04-20 13:31:00
1556
3
原创 细读《Effective C++》之二
第二章 Constructors, Destructors, and Assignment Operators这一章内容参考Stanley B. Lippman的《Inside the C++ Object Model》也会有不小的收获。条款05:Know what functions C++ silently writes and calls在最早接触C++的class的时候,你就被
2007-04-19 15:41:00
1509
原创 3D游戏编程(五)
光照和材质已经使三维图形具有较强的立体感, 如果给三维网格填充上二维图形 (纹理, Texture), 则可表现出更为逼真的场景效果.第六步: 纹理(一) 使用方法1. 声明IDirect3DTecture对象;2. 声明纹理坐标顶点;3. 创建纹理 (文件导入或光影贴图);4. 设置纹理层 (texture stage);5. 指定绘制纹理;6. 绘制网格.
2006-12-26 10:42:00
1565
原创 3D游戏编程(四)
今天才发现, 原来金容俊的第一篇的体系和内容是和DX SDK一样的, 这本书上的例子基本就是SDK的例子. 尽管如此, 我还是决定按部就班的实践一番. 这一次, 就来创建一个圆筒, 并加上光源.第五步: 光源(一) 材质类型由多边形组成的三维物体, 称为网格 (Mesh), 网格对于对象是缺乏表现力的, 需要用材质填充其表面, 并以光源使其更加真实.1. 环境光 (ambient)
2006-12-25 23:17:00
1745
原创 3D游戏编程(三)
前面三步已经实现了从普通Win32 SDK程序到D3D程序的转变, 并且对于设备的初始化和绘图框架也结合程序作了介绍. 接下来就要实现图形从静态到动态, 从平面到立体的变换.第四步: 让图形动起来在图形学中, 三维图形的绘制和运动是通过基本变换 (平移 (transition), 缩放 (Scaling), 旋转 (Rotation)) 的综合运用辅以时间控制实现. 前面我提到过, 几何变
2006-12-24 15:40:00
1598
原创 3D游戏编程(二)
从普通的VC编程到DX SDK9, 以前的技术成了现在的工具. 接触图形学和DX有一个月的时间了, 真正开始理论与实践相结合, 是从转到金容俊的开始的.开发工具: Visual Studio 2005 (VC 8.0) + DirectX SDK Oct. 2006. (注意: 需要添加DirectX SDK的include和lib到解决方案中).第一步: Win32 SDK程序框架对
2006-12-24 02:02:00
1805
原创 3D游戏编程(一)
今天在敲的例子时遇到个问题, IDirect3DDevice9::BeginScene调用失败.void Render()...{ if(NULL == g_pD3DDevice) return; // 清除后置缓冲区, 同时设置为蓝色 (0, 0, 255) g_pD3DDevice->Clear(0, NULL, D3DCLEAR_TARGET, D3D
2006-12-22 22:24:00
1697
原创 DirectX 3D图形编程宝典 (三)
Chap 5. 计算机动画本章介绍了计算机动画的发展, 原理和一些基本技巧, 内容并不多. 介绍的知识也比较简单, 我在这里就一带而过了.Chap 6. Windows API编程本章介绍Windows环境下编程的一点基础知识. 主要是Visual Studio的安装和Visual C++ SDK程序的编制. 对于每一个熟悉VC的程序员来说, 这一章也可以忽略了.从
2006-12-21 23:42:00
1605
原创 DirectX 3D图形编程宝典 (二)
Chap 4. 3D渲染图形从存储到显示, 需要经过表示, 编码和渲染. 所谓渲染, 说白了就是用平面真实的表现客观实体. 主要涉及投影, 透视, 光照, 底纹等技术.1. 投影:从对象到投影中心点 (观察者或称视点) 所有连线 (投影线) 与投影平面的交点集合构成了对象的投影.1) 平行投影:由于在工程制图和技术图纸中, 需要保持投影 (制图) 精确再现对象的各种
2006-12-20 23:31:00
2511
1
原创 DirectX 3D图形编程宝典 (一)
Book Name: DirectX 3D Graphics Programming Bible. 2000, IDG Books Worldwide, Inc.Authors: Julio Sanchez, Maria Canton我找到这本书纯属机缘所系, 作为初学者, 我对DirectX 3D并无过多了解. 完全是出于对游戏编程的向往.本书内容: 全书共四部分:1) 3D图形
2006-12-17 17:05:00
3113
原创 序 Preface
很早之前,就来到优快云了,那时还没有BLOG,我也很少在这里写东西,后来WEB 2.0大兴其道,我也开始用BLOG了,却仍然是很少在这里写。现在开始学习图形编程,觉得优快云的圈子更适合学习和探讨,就决定在这里写一些,记录自己的学习历程,主要和图形图像、游戏开发相关。由于当初在本科的时候一直是用C的,就是用的Borland的Turbo C 2.0,不知道现在还有多少人对TC情有独钟,我一直到
2006-12-07 02:14:00
983
汉字拼音对照表(xml格式)
2010-08-16
GNU Emacs Manual
2010-04-20
GNU MAKE中文手册
2010-04-20
SVN 1.6 中文手册
2009-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人