Home

析构函数和成员析构的先后顺序

肖总问到这个问题,写了个程序验证: class Member { public: Member (){} virtual ~Member (){printf(“member destruct\n”);} }; class Base { public: Base (){} virtual ~Base (){ printf(“destruct\n”);} private: Member member_; }; int main(int argc, const char *argv[]) { Base c; return 0; } 结果是: destruct member destru...

Read more

分布式系统/NOSQL入门书单

简单记一下我看过的和觉得值得看的。主要是给@赵龙作为参考。 分布式相关 [1] 大规模分布式存储系统, http://book.douban.com/subject/25723658/ 阿里日照的书,全面介绍了分布式系统的原理和实践,入门不可多得的书 [2] 分布式系统原理介绍, http://blog.sciencenet.cn/home.php?mod=attachment&id=31413 百度刘杰的,讲基本的分布式原理,有些笔误什么的。 [3] paxos算法相关, http://cxh.me/2014/08/26/paxos-study/ 总结了paxos算法一些资料。 [5] 分布式数据库系统原理, htt...

Read more

自动生成ifdef标记和作者信息的插件

针对团队开发为了统一代码风格往往有比较严格的代码规范。为了自动化的生成一些不变的内容,写了如下两个插件(有的是改动): ifdef.vim 生成ifndef标记,防止重复包含。 author_info.vim 生成更新作者信息版权声明 详见https://github.com/chenxiaohui/ifdef_generator.

Read more

夜景几张

实在是镜头决定了成败,套头拍月亮基本是对不上焦的节奏,只能拍拍旁边的楼了。财富金融中心,应该是北京最高的写字楼了。貌似有跑焦。

Read more

永不分开,世界的爱

这应该算是很古老很古老的一首歌了,当时赵薇还是个青涩的小燕子。2000年的时候还在上初中,实在不理解新千年的意义。现在回想起来,新千年的到来,对人类来说,实在是个有着难以名状的意义。20世纪前半叶的多灾多难,后半叶的冷战阴云,没有哪个世纪会产生如此重大的人类群体性灾难。旧的秩序被打破,核战争的阴云,武器发展到批量化的收割人命,20世纪可能是人类历史上绝无仅有一个世纪。 从这个角度想,这首歌真是充满了感慨。停留在20世纪的末尾,回首这一个多灾多难的世纪,看人类从错误中反省,最终一起站在新千年的入口展望未来。某种意义上说,人类第一次站在一起迎接和平,憧憬未来。这其中的意味可能只有经历过苦难的人才体会的出来,虽然2000年的时候局部战争依然在进行着。 一首歌的意味只有联想到背景才体会得到...

Read more

用google来验证一下Maclaurin展开式

偶然发现google可以直接画出函数图像来,精准度极高,于是想起来用这个功能来看一下Maclaurin展开是如何随精度增加而逼近展开式的。从某种角度上讲,这是一个极好的拟合过程,相对于梯度下降的逐步拟合来讲,泰勒公式或者麦克劳林展开直接推导出了每一个拟合因子。 泰勒级数的定义如下: 不过这是带拉格朗日余项的形式。让基准值=0可以得到 Maclaurin 展开式,当然这也就意味着Maclaurin展开式在0附近的拟合是最精确的。定义如下:

Read more

《改善C++程序的150个建议》勘误

翻了一下编写高质量代码:改善C++程序的150个建议,感觉一般,主要是能下到pdf。看到两个错误。 第一个错误是内存池的那里,内部类使用了外部类的成员变量,这是C++啊,不是java,内部类默认不持有外部类指针。 class MemPool { public: MemPool (int nItemSize, int nMemBlockSize = 2048): m_nItemSize(nItemSize), m_nMemBlockSize(nMemBlockSize), m_pMemBlockHeader(NULL), m_pFreeNodeHeader(NULL) {} virtual ~MemPool ...

Read more

Paxos算法学习

本来想写点东西,后来觉得都是一知半解。这里转载一点学习资料吧。 一个是知行学社的分布式系统与Paxos算法视频课程,循序渐进,讲解地比较浅显易懂。 </embed> 另一个是百度刘杰《分布式系统原理介绍》。当然Lamport的几篇论文是不能不看的,虽然都不太好懂。 The Part-Time Parliament Paxos Made Simple The Byzantine Generals Problem 相比较而言,paxos的wiki可能更好懂一些。有余力的同学可以做一下MIT Distributed Systems Labs。

Read more