上一页 1 ··· 3 4 5 6 7
摘要: 在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do...while(0)消除goto语句。通常,如果在一个函数中开始要分配一些... 阅读全文
posted @ 2009-09-16 13:47 lzprgmr 阅读(2734) 评论(1) 推荐(2) 编辑
摘要: 说起C++的模板及模板特化, 相信很多人都很熟悉 ,但是说到模板特化的几种类型,相信了解的人就不是很多。我这里归纳了针对一个模板参数的类模板特化的几种类型, 一是特化为绝对类型; 二是特化为引用,指针类型;三是特化为另外一个类模板。这里用一个简单的例子来说明这三种情况://generalversiontemplate<classT>classCompare{public:staticb... 阅读全文
posted @ 2009-09-16 13:46 lzprgmr 阅读(735) 评论(0) 推荐(0) 编辑
摘要: auto_ptr是当前C++标准库中提供的一种智能指针,或许相对于boost库提供的一系列眼花缭乱的智能指针, 或许相对于Loki中那个无所不包的智能指针,这个不怎么智能的智能指针难免会黯然失色。诚然,auto_ptr有这样那样的不如人意,以至于程序员必须像使用"裸"指针那样非常小心的使用它才能保证不出错,以至于它甚至无法适用于同是标准库中的那么多的容器和一些算法,但即使如此,我们仍然不能否认这个... 阅读全文
posted @ 2009-09-16 11:57 lzprgmr 阅读(613) 评论(0) 推荐(0) 编辑
摘要: 一般情况下,如果要我们写一个求绝对值的函数,我们的实现很有可能会是这样:template<classT>Tabs_Normal(TtNum){if(tNum>0.0)returntNum;elsereturn-tNum;}也就是说我们会用到一个if-else判断来决定是否反转符号位。在3D游戏软件,或一些对性能要求比较高的底层系统中,当大规模的求绝对值时,这个if-else结构会... 阅读全文
posted @ 2009-09-16 11:56 lzprgmr 阅读(2550) 评论(4) 推荐(0) 编辑
摘要: 这几天在网上看到有人总结了4种比较常见简单的排序的算法,并用C#实现了出来。看了之后不由的想起了大学时候学<<数据结构>>的情景, 忍不住用C++实现了一遍,除了冒泡排序, 选择排序, 插入排序,希尔排序之外, 还包括了算法复杂度较好的快速排序与堆排序。 然后用C++强大的模板功能实现了一个基于policy的Sort函数, 很明显,这个Sort函数是以排序算法为policy... 阅读全文
posted @ 2009-09-16 11:52 lzprgmr 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: Singleton应该可以算是GOF的23个模式中最简单的一个模式了,它有两个要求:一是保证一个类仅有一个实例;二是提供一个访问它的全局访问点。这在实现中分别对应为:一是构造函数非public;二是提供一个静态函数作为全局访问点。在C#中,我们可以这么写:publicclassExampleSingleton{//codetosupportSingletonprotectedExampleSing... 阅读全文
posted @ 2009-09-16 11:49 lzprgmr 阅读(1422) 评论(0) 推荐(0) 编辑
摘要: 今天在网上无意间看到一道笔试题,初看十分简单,再看要求发现还是比较曲折的: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--函数原形已经给出:intp(inti,intn);功能:调用该函数,打印如下格式的输出,例p(1,7);123456765432... 阅读全文
posted @ 2009-09-16 11:46 lzprgmr 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 目前所做的项目,今年应该是第5个release了, 走过了这5年的风风雨雨,中间几度更易开发人员,现在的团队与5年前的团队已是两个完全没有"交集"的团队, 这样必然导致我们对项目会存在很多的不理解,不理解其初衷,不理解其原始设计,不理解其代码。。。对一些不理解的地方不敢大动手脚,只能修修补补以完成需要的功能,其结局从开发角度看就是总体设计的缺失, 代码结构的混乱,从功能角度看就是容易出错,运行速度... 阅读全文
posted @ 2009-09-16 11:42 lzprgmr 阅读(394) 评论(0) 推荐(0) 编辑
摘要: 近一年以来,AUTODESK的面试题在网上是闹的沸沸扬扬,作为一个名企,这是可以理解的,况且其面试题质量也是不错的。抽一些闲暇时间,把网上传的比较多的70道题简单的解答了一遍,不为别的,只为再熟悉一下在大学学过的一些基础知识。希望对大家有用。当然,这只是我的个人解答,有什么不对的或者需要补充的,大家尽管提上来,好的话我加上去的。。。1. 在类的普通成员函数中调用虚函数,情况是怎么样的?(对象、引用... 阅读全文
posted @ 2009-09-16 11:35 lzprgmr 阅读(974) 评论(0) 推荐(0) 编辑
摘要: 消息机制是Windows的一个核心机制,而了解消息机制最好的资料自然就是MSDN了:Messages and Message Queues,读了一下感觉颇有收获,摘下一些要点:窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wParam, lParam), 当窗口收... 阅读全文
posted @ 2009-09-16 10:47 lzprgmr 阅读(416) 评论(0) 推荐(1) 编辑
摘要: I am testing my blog 阅读全文
posted @ 2009-08-12 12:29 lzprgmr 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 摘要: 本文介绍了do...while不是作为循环使用时的两种tricky的用法,从CSDN向CppBLOG转换阵地的第一枪!阅读全文SmartPtr 2007-07-03 22:49 发表评论 阅读全文
posted @ 2007-07-03 22:49 lzprgmr 阅读(166) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7

黄将军