摘要: 偶见 clsA*pa = new (std::nothrow)A();是了一下, 这个方法, 是用来压制new的exception, 不是contrsuctor。压制new的exception有一个好处就是可以通过 pa是否为NULL, 来判断, new是否成功。因为new失败的话, 有几种第一会返回NULL指针, 第二, 会throw bad_alloc 阅读全文
posted @ 2011-03-28 20:00 nosaferyao 阅读(1378) 评论(0) 推荐(0) 编辑
摘要: select系统调用是用来让我们的程序监视多个文件描述符(file descrīptor)的状态变化的。程序会停在select这里等待,直到被监视的文件描述符有某一个或多个发生了状态改变。select()的机制中提供一fd_set的数据结构,实际上是一long类型的数组, 每一个数组元素都能与一打开的文件描述符(不管是Socket描述符,还是其他 文件或命名管道或设备描述符)建立联系,建立联系的工作由程序员完成, 当调用select()时,由内核根据IO状态修改fd_set的内容,由此来通知执 行了select()的进程哪一Socket或文件可读,select函数原型如下:int select 阅读全文
posted @ 2011-03-20 21:02 nosaferyao 阅读(2603) 评论(0) 推荐(0) 编辑
摘要: copy from mail of方戟1、KR算法 a) 算法思路: 通过一个函数{F(n)}计算模式串S和文本串T的一个指纹值,首先比较F(S)和F(Tn)的值,其中(1<=n<=m-n+1)当F(S)和F(Tn)的值相等时,再比较实际的字符串。 该算法需要在T上迭代计算出F(T1),F(T2)….F(Tm-n+1), 依次比较 b) F(n)函数的选择 需要考虑两个问题 1. 尽量减少碰撞 即减少如下情况 有字符串X和Y 且X!=Y但是F(X)==F(Y) 2. 由于在最坏的情况下需要在文本串T上迭代F函数 m-n+1次, 出于效率的考虑,需要能够快速的计算出F(T1),F(T 阅读全文
posted @ 2011-03-20 16:52 nosaferyao 阅读(1513) 评论(0) 推荐(0) 编辑
摘要: http://www.ibm.com/developerworks/cn/linux/l-makefile/ 阅读全文
posted @ 2011-03-19 22:47 nosaferyao 阅读(122) 评论(0) 推荐(0) 编辑
摘要: copy from :http://blog.mcuol.com/User/gongsun817/Article/34879_1.htm 对linux内核中compiler.h文件的分析 所有的内核代码,基本都包含了linux\compile.h这个文件,所以它是基础,打算先分析这个文件里的代码看看,有空再分析分析其它的代码。 首先印入眼帘的是对__ASSEMBLY__这个宏的判断,这个变量实际是在编译汇编代码的时候,由编译器使用-D这样的参数加进去 的,AFLAGS这个变量也定义了这个变量,gcc会把这个宏定义为1。用在这里,是因为汇编代码里,不会用到类似于__user这样的属性(关于 _. 阅读全文
posted @ 2011-03-16 13:18 nosaferyao 阅读(434) 评论(0) 推荐(0) 编辑
摘要: likely 和 unlikely可以用来优化 指令的预读技术。likely表示极可能发生, unlikely表示不怎么发生。下面节自《Linux Kernel Development》 2nd , 第二章(书可以在http://elinux.cn下载)Branch AnnotationThe gcc C compiler has a built-in directive that optimizes conditional branches as either very likely taken or very unlikely taken. The compiler uses the di 阅读全文
posted @ 2011-03-15 21:08 nosaferyao 阅读(560) 评论(0) 推荐(0) 编辑
摘要: copy from http://www.cppblog.com/Solstice/ 匿名 namespace (anonymous namespace 或称 unnamed namespace) 是 C++ 的一项非常有用的功能,其主要目的是让该 namespace 中的成员(变量或函数)具有独一无二的全局名称,避免名字碰撞 (name collisions)。一般在编写 .cpp 文件时,如果需要写一些小的 helper 函数,我们常常会放到匿名 namespace 里。muduo 0.1.7 中的 muduo/base/Date.cc 和 muduo/base/Thre 阅读全文
posted @ 2011-02-21 23:10 nosaferyao 阅读(591) 评论(0) 推荐(0) 编辑
摘要: http://topic.csdn.net/u/20110217/16/3b322da2-f063-4267-8182-a30fd44d5682.html?86017 阅读全文
posted @ 2011-02-21 13:15 nosaferyao 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 最近做了一些网格的参数化,效果貌似不是很好,还是传上来抛砖引玉。有兴趣的大家讨论讨论模型猪参数化到平面后的结果 阅读全文
posted @ 2008-08-10 16:38 nosaferyao 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 想做一些基于面片模型的二维纹理,不知道谁有兴趣或者有过这方面的经验,一起讨论讨论。。。。 阅读全文
posted @ 2008-05-02 13:19 nosaferyao 阅读(195) 评论(0) 推荐(0) 编辑