
程序设计
文章平均质量分 59
xeranic
这个作者很懒,什么都没留下…
展开
-
Exploring the C++ Unit Testing Framework Jungle
Exploring the C++ Unit Testing Framework Jungle 一篇对各种 C++ Unit Test 工具进行评测/选择的文章。作者:Noel Llopis 时间:28 December 2004其中评测了包括:CppUnit、Boost.Test、CppUnitLite、NanoCppUnit、Unit++、CxxTest。但是没有包括 Google 排名第一的原创 2006-03-09 23:00:00 · 1020 阅读 · 0 评论 -
面向对象的MVC模式
先来看一个传统的MVC模式:class FooModel {public: int getNumber() {return m_number;} void setNumber(int m) {m_number = m; m_view->numberChanged();} FooView *getView() {return m_view;} void setView(Foo原创 2006-10-10 14:00:00 · 1548 阅读 · 0 评论 -
Transparency 技术总结
I. Define Sc source color component Sa source alpha component Sca source color premultiplied alpha component Dc destination color component Da destination alpha原创 2006-10-03 22:29:00 · 1060 阅读 · 0 评论 -
Color Convert 技术总结
I. Channel:1. Device to Device (Without Default) : Direct Convert eg. RGB to Gray eg. RGB to CMYK (use UCR and BG which be specified in GState). eg. Gray to RGB eg. Gray to CMYK eg. CMYK原创 2006-10-03 22:27:00 · 1534 阅读 · 0 评论 -
图像选区的生成方法
图像选区的生成方法:1. 将目标图像转换成二值图。2. 遍历二值图中的每一个点。3. 从这个点开始记录轮廓,直到返回起始点。4. 将二值图中的此轮廓范围反转。5. 继续遍历。6. 整理记录的轮廓。重叠的部分剪去,与目标点不重叠的去除。原创 2006-10-03 22:19:00 · 1213 阅读 · 0 评论 -
问题是什么?
老牛总是说考虑xx问题的时候不应该考虑xx问题,这是什么意思呢?我的理解是:不应该盲目的思考如何解决问题,而应该把重点首先放在“问题是什么”上。重点是对问题的分析,当对问题有足够的了解时,解决方案就是显而易见的。看看温伯格的“你的灯亮着么?”、“程序设计心理学”、“系统化思维导论”。原创 2006-10-03 22:16:00 · 826 阅读 · 0 评论 -
按合约设计与依赖巧合编程
任何程序库都有自己的一套使用方法,你只有严格遵守程序库设计者定义的规范下,才能‘随意’的使用他。比如在STL中,除了Vector之外的大多数容器的Iterator都不能被存储,因为针对容器的很多操作都会导致Iterator失效,只有在每次使用Iterator时都从容器中重新获得才可以保证安全,否则“行为未定义”。(当然Iterator的使用也不至于如此死板,但这样的使用一定是最简单最合法的,如果法原创 2006-10-03 22:14:00 · 1193 阅读 · 0 评论 -
Scott Meyers 5x5 Articles
Scott Meyer 最近在发表的一系列关于C++总结性质的文章。 5 for 5. My Most Important C++ Aha! Moments...Ever In this article, Scott Meyers shares his picks for the five most meaningful Aha! moments in his原创 2006-09-22 22:08:00 · 847 阅读 · 0 评论 -
上下文无关文法
上下文无关文法(context-free gammar):指文法的前后(上下)没有关系,如文法:_statement ::= _name is _names friend.是上下文无关文法,因为文中出现的两个 name 可以不同(也可以相同,假设自己可以是自己的朋友)。而文法:_statement ::= _name{0} likes _name{1}, and _name{1} likes _原创 2006-05-11 22:45:00 · 1908 阅读 · 0 评论 -
STL Deque 总结
对于 deque 这个东西在初学 STL 的时候好像有看过,可能是因为其特性不足够吸引人吧,尽然被忽略了。前两天在看 Effective STL 的时候才发现这个东东还是蛮有用的,就此总结一下:首先 deque 读作 deck ,中译双端队列。即为双端,其内部必然有两个队列,如果将队列看作是 STL 中的 vector,则 deque 可以看成是如下结构:template class dequ原创 2006-04-04 00:56:00 · 1893 阅读 · 0 评论 -
随便读读:Windows 游戏编程大师技巧 (第二版) 关于BOB
BOB (Blitter Object) 游戏引擎中的重要对象,代表由一系列动画组成的一个屏幕元素。让人想到图元……BOB 的基本属性: Position Size State : visible or invisible Images or ImageFrames Animations Animation Speed cu原创 2006-02-22 00:28:00 · 1194 阅读 · 0 评论 -
数据的格式选择,和同源数据
数据的格式选择,和同源数据。如果我们正在设计一个游戏系统,其中两个重要的部分 Sprite & Game,Game 负责整体逻辑,为了刷新每个 Sprite 的状态(位置,速度,加速度),Game 向 Sprite 发送 tick message。// examples 1public class Game { private long lastTime; private List s原创 2006-02-16 21:20:00 · 2403 阅读 · 0 评论 -
GNU Compile Tools, 可执行文件, 静态链接库, 动态链接库
Compile Process对于一个编译型语言,编译器工作时总要经过预处理、编译、链接等几个过程。以 C/C++ 为例:预处理器(cpp)将每个 .c/.cpp 文件中 #include 的头文件都合并到 .c/.cpp 文件中,并且对其进行宏扩展,由此生成数个编译单元。一般来说每个 .c/.cpp 文件对应一个编译单元。随后,编译器(cc)将每个编译单元翻译成本地二进制代码,在 GNU/Lin原创 2006-06-01 16:52:00 · 1799 阅读 · 0 评论