随笔分类 -  计算机周边

摘要:从头到尾彻底理解KMP作者:July时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。1. 引言 本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得非常混乱,如此,留言也是“骂声”一片。所以一直想找... 阅读全文
posted @ 2014-11-10 15:11 阿津 阅读(1985) 评论(1) 推荐(0) 编辑
摘要:刘未鹏(pongba) /文waterwalk /译首先非常感谢waterwalk的辛勤翻译:-) waterwalk把翻译回贴在原文的下面了,为了方便阅读我提取出来编辑以后重发一个帖子。这篇文章原本是想对最近C/C++争论系统的整理一下一些思考的,但由于一开始的时候用英文写了两段,后来就干脆都用英文了,造成很多人阅读的麻烦,在此抱歉。不过好在waterwalk翻译了整篇文章,于是单独贴在这里:-)另,原文在这里。问题为什么用C++呢? 在你皱着眉头离开之前,试着回答这个简单的问题。效率,是么?人人都知道这个。但情况是,当一个人开始讨论编程语言或与其相关的话题时,他必须要非常明确而有针对性。为 阅读全文
posted @ 2013-03-15 10:52 阿津 阅读(262) 评论(0) 推荐(0) 编辑
摘要:在程序运行过程中,报错这个东西是在异常出现后用于防止继续程序的动作。这些异常,包括用户的,逻辑的,系统的都可以使用一个函数来识别。如果识别的程序不能够处理异常,那么就会抛出一个异常。而能够处理该异常函数就会接收并进行处理。在C++中,当一个异常被抛出,它就必须被处理,否则会导致一些程序的报错或终止。如果用户异常处理不存在,编译器就会提供一个默认机制来终止程序异常处理比常规的程序流程控制(如循环语句或 if 语句)更占用资源。常规情况下最好不要使用异常机制,将它留在真正“不寻常”的情形下使用吧。当不能在局部范围内处理时,异常非常有用的。您可以直接将流程控制转移到可以处理错误的地方,以此取代在程序 阅读全文
posted @ 2013-01-15 00:55 阿津 阅读(427) 评论(0) 推荐(0) 编辑
摘要:英文原文:10 steps to becoming a better programmer 这篇文章要介绍的,是我作为专业程序员这些年来学到的能真正提高我的代码质量和整体工作效率的 10 件事情。 1. 永远不要复制代码 不惜任何代价避免重复的代码。如果一个常用的代码片段出现在了程序中的几个不同地方,重构它,把它放到一个自己的函数里。重复的代码会导致你的同事在读你的代码时产生困惑。而重复的代码如果在一个地方修改,在另外一个地方忘记修改,就会产生到处是 bug,它还会使你的代码体积变得臃肿。现代的编程语言提供了很好的方法来解决这些问题,例如,下面这个问题在以前很难解决,而如今使用 lamb... 阅读全文
posted @ 2013-01-07 14:31 阿津 阅读(177) 评论(0) 推荐(0) 编辑
摘要:下表列出了受支持的编码以及与这些编码关联的代码页。最后一列中的星号指示 .NET Framework 本身即支持该代码页,而不需考虑基础平台。代码页名称显示名称37IBM037IBM EBCDIC(美国 - 加拿大)437IBM437OEM 美国500IBM500IBM EBCDIC(国际)708ASMO-708阿拉伯字符 (ASMO 708)720DOS-720阿拉伯字符 (DOS)737ibm737希腊字符 (DOS)775ibm775波罗的海字符 (DOS)850ibm850西欧字符 (DOS)852ibm852中欧字符 (DOS)855IBM855OEM 西里尔语857ibm857土耳 阅读全文
posted @ 2013-01-05 20:12 阿津 阅读(337) 评论(0) 推荐(0) 编辑