代码改变世界

原创 正则引擎完工,记录下思路和设计

2014-10-26 00:11 by IceCrystals, 1255 阅读, 2 推荐, 收藏, 编辑
摘要:最近20天都在写这个...终于完工了(走向无尽的重构道路...)...感谢VC聚聚的博文和RE2作者的博客指导,感谢VC聚聚的源码参考.非常感谢!启发很大.vc聚聚的正则语法树遍历部分的方案.真是精妙!之前我虽然知道用Visitor模式遍历异构树,但是不知道怎么写vistor的框架满足需求.用的时候... 阅读全文

2013工作总结与2014工作计划(编程方面)

2014-01-01 21:24 by IceCrystals, 1951 阅读, 2 推荐, 收藏, 编辑
摘要:这一年就这么过去了。。。总觉得应该写个总结来记录和反思一下。在编程学习方面: 已经在编程道路上走了一年半了,买了大概50本技术书籍(TAT省吃俭用2000多啊。。。),看完了大概20来本,大概10来本看了几遍。深入学习了C++,入门了C#,入门了算法,入门了操作系统,入门了编译原理。虽然感觉自己学的挺多,但是暴露出来的问题依然很多。 1.即使是看了几遍的内容,依然还是会忘记,应该没事多多温习自己看多那些东西,例如当初对象模型可是看了三四遍,这块抽象基类的内存模型以及混合抽象基类,虚基类,虚函数表,多重继承后的这些东西的内存模型以及编译器的处理依然不清晰。在温习旧知识这块,我做的还是太烂。。.. 阅读全文

C++异常安全的思考

2013-11-11 01:34 by IceCrystals, 1820 阅读, 0 推荐, 收藏, 编辑
摘要:异常安全的代码是指,满足两个条件1异常中立性 :是指当你的代码(包括你调用的代码)引发异常时,这个异常 能保持原样传递到外层调用代码2.异常安全性:1,抛出异常后,资源不泄露,2,抛出异常后,不会使原有数据恶化(例如正常指针变野指针)3。。少些try catch,因为大量的try catch会影响代码逻辑。导致代码丑陋混乱不优雅一段代码要具有异常安全性,必须同时具有异常中立性和一定等级的异常安全性保证异常安全的等级一般有:1,函数提供基本保证(the basic guarantee)(不会发生内存泄漏并且程序内的每个对象都处在合法的状态,没有流错位,没有野指针,但是不是每个对象的精确状态是可以 阅读全文