- 博客(4)
- 收藏
- 关注
原创 《重构----改善既有代码的设计》读书笔记
1. 为什么要重构书里,以及网上,都列举了很多理由,但是从我实际角度出发呢,是因为已有的代码写的非常复杂,导致但我们需要增加新功能时,非常麻烦,往往因为结构很复杂,会有不知道怎么下手的感觉。所以如果能够把代码组织得结构良好,会大大方便我们的工作。另外,结构复杂的代码中隐藏了很多bug,现在的状况是往往要等到用户报告bug我们再赶紧修正,这对哪一方都很不好,特别是从我的角度来说,显得很被动
2009-09-01 13:11:00 1096
原创 自定义输入输出流
// gooooloo 2009.10.19struct setWidth{ int _w; setWidth(int a):_w(a){}};struct setFactor{ double _f; setFactor(double f):_f(f){}};struct myOstream{ std::ostream &_ou; in
2009-10-19 11:52:00 1039
原创 面向对象编程之RAII
【问题起源】假设有这么个函数:void foo(){ int *p = new int; dosomething(p); delete p;} 看起来似乎没什么问题。但是面向对象里有异常这么回事,如果一个异常抛出又没被处理,就会直接退出该级函数到上一层去。如果dosomething()中有异常抛出,这里delete p就不会被执行,造成资源泄露。为了解决
2009-09-07 13:41:00 454
原创 一个平方乘算法的模板
自定义类的话,需特化 getMulIndentity() 和 定义 *= 及 %=。其中 mod 参数 用于求模运算。 // gooooloo 2009.8.23template T getMulIndentity(){ return 1;}template T pow(const T &m, int n, int mod = 0){ T rlt
2009-08-24 23:54:00 2792
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人