<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Richarll的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Richarll</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Richarll]]></copyright><item><title><![CDATA[(转)JAVA中SERIALVERSIONUID的解释]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6606729</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6606729</guid><author>Richarll</author><pubDate>Thu, 14 Jul 2011 18:54:38 +0800</pubDate><description><![CDATA[serialVersionUID作用：        序列化时为了保持版本的兼容性，即在版本升级时反序列化仍保持对象的唯一性。有两种生成方式：       一个是默认的1L，比如：private static final long serialVersionUID = 1L;]]></description><category></category></item><item><title><![CDATA[VS2010 c++编写的程序在别人的机子运行不了，缺少mfc100u.dll xxx100d.dll等的解决方法]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6591550</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6591550</guid><author>Richarll</author><pubDate>Thu, 07 Jul 2011 22:53:44 +0800</pubDate><description><![CDATA[解决方法：1.将这些dll打包,和应用程序一起发布;2.采用MFC静态编译;附1：VS2010中静态编译设置方法     使用VS2010编译的程序在windows xp中运行时  经常会出现找不到  相关的DLL文件，我们可以使用静态编译的方法把这些运行依赖文件打包到*.exe]]></description><category></category></item><item><title><![CDATA[（转）getline函数的一个小bug]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6305874</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6305874</guid><author>Richarll</author><pubDate>Wed, 06 Apr 2011 23:19:00 +0800</pubDate><description><![CDATA[<br />这个是出问题的程序#include <iostream><br />#include <string><br />int main()<br />{    using namespace std;<br />    string str;<br />    std::cout<<"Please input your name:/n";<br />    getline(cin,str);<br />    std::cout<<"Hello,"<<str<<"!!/n";}比如说,我们输入"vi]]></description><category></category></item><item><title><![CDATA[威佐夫博奕]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6254915</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6254915</guid><author>Richarll</author><pubDate>Wed, 16 Mar 2011 23:07:00 +0800</pubDate><description><![CDATA[<br />威佐夫博奕（Wythoff Game）：　　有两堆各若干个物品，两个人轮流从某一堆或同时从两堆中取同样多的物品，规定每次至少取一个，多者不限，最后取光者得胜。 <br />　　这种情况下是颇为复杂的。我们用（ak，bk）（ak ≤ bk ,k=0，1，2，...,n)表示两堆物品的数量并称其为局势，如果甲面对（0，0），那么甲已经输了，这种局势我们称为奇异局势。前几个奇异局势是：（0，0）、（1，2）、（3，5）、（4，7）、（6，10）、（8，13）、（9，15）、（11，18）、（12，20]]></description><category></category></item><item><title><![CDATA[10. 结束语]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249166</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249166</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:14:00 +0800</pubDate><description><![CDATA[10. 结束语¶<br />Tip<br />运用常识和判断力, 并 保持一致.<br />编辑代码时, 花点时间看看项目中的其它代码, 并熟悉其风格. 如果其它代码中 if 语句使用空格, 那么你也要使用. 如果其中的注释用星号 (*) 围成一个盒子状, 你同样要这么做.<br />风格指南的重点在于提供一个通用的编程规范, 这样大家可以把精力集中在实现内容而不是表现形式上. 我们展示了全局的风格规范, 但局部风格也很重要, 如果你在一个文件中新加的代码和原有代码风格相去甚远, 这就破坏了文件本身的整体美]]></description><category></category></item><item><title><![CDATA[9. 规则特例]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249164</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249164</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:14:00 +0800</pubDate><description><![CDATA[9. 规则特例¶<br />前面说明的编程习惯基本都是强制性的. 但所有优秀的规则都允许例外, 这里就是探讨这些特例.9.1. 现有不合规范的代码¶<br />Tip<br />对于现有不符合既定编程风格的代码可以网开一面.<br />当你修改使用其他风格的代码时, 为了与代码原有风格保持一致可以不使用本指南约定. 如果不放心可以与代码原作者或现在的负责人员商讨, 记住, 一致性 包括原有的一致性.9.2. Windows 代码¶<br />Tip<br />Windows 程序员有自己的编程习惯, 主要源]]></description><category></category></item><item><title><![CDATA[8. 格式]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249161</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249161</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:12:00 +0800</pubDate><description><![CDATA[8. 格式¶<br />代码风格和格式确实比较随意, 但一个项目中所有人遵循同一风格是非常容易的. 个体未必同意下述每一处格式规则, 但整个项目服从统一的编程风格是很重要的, 只有这样才能让所有人能很轻松的阅读和理解代码.<br />另外, 我们写了一个 emacs 配置文件 来帮助你正确的格式化代码.8.1. 行长度¶<br />Tip<br />每一行代码字符数不超过 80.<br />我们也认识到这条规则是有争议的, 但很多已有代码都已经遵照这一规则, 我们感觉一致性更重要.优点: 提倡该原则的人主张]]></description><category></category></item><item><title><![CDATA[7. 注释]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249159</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249159</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:11:00 +0800</pubDate><description><![CDATA[7. 注释¶<br />注释虽然写起来很痛苦, 但对保证代码可读性至关重要. 下面的规则描述了如何注释以及在哪儿注释. 当然也要记住: 注释固然很重要, 但最好的代码本身应该是自文档化. 有意义的类型名和变量名, 要远胜过要用注释解释的含糊不清的名字.<br />你写的注释是给代码读者看的: 下一个需要理解你的代码的人. 慷慨些吧, 下一个人可能就是你!7.1. 注释风格¶<br />Tip<br />使用 // 或 /**/, 统一就好.<br />// 或 /**/ 都可以; 但 //更 常用. 要在如]]></description><category></category></item><item><title><![CDATA[5. 其他 C++ 特性]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249157</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249157</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:10:00 +0800</pubDate><description><![CDATA[5. 其他 C++ 特性¶5.1. 引用参数¶<br />Tip<br />所以按引用传递的参数必须加上 const.定义: 在 C 语言中, 如果函数需要修改变量的值, 参数必须为指针, 如 intfoo(int*pval). 在 C++ 中, 函数还可以声明引用参数: intfoo(int&val). 优点: 定义引用参数防止出现 (*pval)++ 这样丑陋的代码. 像拷贝构造函数这样的应用也是必需的. 而且更明确, 不接受 NULL 指针. 缺点: 容易引起误解, 因为引用在语法上是值变量却拥有指针]]></description><category></category></item><item><title><![CDATA[6. 命名约定]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249152</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249152</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:08:00 +0800</pubDate><description><![CDATA[6. 命名约定¶<br />最重要的一致性规则是命名管理. 命名风格快速获知名字代表是什么东东: 类型? 变量? 函数? 常量? 宏 ... ? 甚至不需要去查找类型声明. 我们大脑中的模式匹配引擎可以非常可靠的处理这些命名规则.<br />命名规则具有一定随意性, 但相比按个人喜好命名, 一致性更重, 所以不管你怎么想, 规则总归是规则.6.1. 通用命名规则¶<br />Tip<br />函数命名, 变量命名, 文件命名应具备描述性; 不要过度缩写. 类型和变量应该是名词, 函数名可以用 “命令性” 动]]></description><category></category></item><item><title><![CDATA[4. 来自 Google 的奇技]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249146</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249146</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:04:00 +0800</pubDate><description><![CDATA[4. 来自 Google 的奇技<br />Google 用了很多自己实现的技巧 / 工具使 C++ 代码更加健壮, 我们使用 C++ 的方式可能和你在其它地方见到的有所不同.4.1. 智能指针<br />Tip<br />如果确实需要使用智能指针的话, scoped_ptr 完全可以胜任. 你应该只在非常特定的情况下使用 std::tr1::shared_ptr, 例如 STL 容器中的对象. 任何情况下都不要使用 auto_ptr.<br />“智能” 指针看上去是指针, 其实是附加了语义的对象. 以 ]]></description><category></category></item><item><title><![CDATA[3.类]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249142</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249142</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 20:00:00 +0800</pubDate><description><![CDATA[3. 类类是 C++ 中代码的基本单元. 显然, 它们被广泛使用. 本节列举了在写一个类时的主要注意事项.3.1. 构造函数的职责Tip构造函数中只进行那些没什么意义的 (trivial, YuleFox 注: 简单初始化对于程序执行没有实际的逻辑意义, 因为成员变量 “有意义” 的值大多不在构造函数中确定) 初始化, 可能的话, 使用 Init() 方法集中初始化有意义的 (non-trivial) 数据.定义: 在构造函数体中进行初始化操作. 优点: 排版方便, 无需担心类是否已经初始化. 缺点: 在构]]></description><category></category></item><item><title><![CDATA[2.作用域]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249138</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249138</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 19:59:00 +0800</pubDate><description><![CDATA[2. 作用域2.1. 名字空间<br />Tip<br />鼓励在 .cc 文件内使用匿名名字空间. 使用具名的名字空间时, 其名称可基于项目名或相对路径. 不要使用 using 关键字.定义: 名字空间将全局作用域细分为独立的, 具名的作用域, 可有效防止全局作用域的命名冲突. 优点: <br />虽然类已经提供了（可嵌套的）命名轴线 (YuleFox 注: 将命名分割在不同类的作用域内), 名字空间在这基础上又封装了一层.<br />举例来说, 两个不同项目的全局作用域都有一个类 Foo, 这样在编译或]]></description><category></category></item><item><title><![CDATA[1.头文件]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6249130</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6249130</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 19:54:00 +0800</pubDate><description><![CDATA[1. 头文件通常每一个 .cc 文件都有一个对应的 .h 文件. 也有一些常见例外, 如单元测试代码和只包含 main() 函数的 .cc 文件.正确使用头文件可令代码在可读性、文件大小和性能上大为改观.下面的规则将引导你规避使用头文件时的各种陷阱.1.1. #define 保护Tip所有头文件都应该使用 #define 防止头文件被多重包含, 命名格式当是: ___H_为保证唯一性, 头文件的命名应该依据所在项目源代码树的全路径. 例如, 项目 foo 中的头文件 foo/src/bar/baz.h 可按]]></description><category></category></item><item><title><![CDATA[皮克定理]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6248982</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6248982</guid><author>Richarll</author><pubDate>Mon, 14 Mar 2011 18:07:00 +0800</pubDate><description><![CDATA[<br />具体做法:　　一张方格纸上，上面画着纵横两组平行线，相邻平行线之间的距离都相等，这样两组平行线的交点，就是所谓格点。   <br />a=39,b=14,s=45<br />如果取一个格点做原点O，如图1，取通过这个格点的横向和纵向两直线分别做横坐标轴OX和纵坐标轴OY，并取原来方格边长做单位长，建立一个坐标系。这时前面所说的格点，显然就是纵横两坐标都是整数的那些点。如图1中的O、P、Q、M、N都是格点。由于这个缘故，我们又叫格点为整点。 <br />　　一个多边形的顶点如果全是格点，这多边形就]]></description><category></category></item><item><title><![CDATA[bupt1003]]></title><link>https://blog.youkuaiyun.com/Richarll/article/details/6246106</link><guid>https://blog.youkuaiyun.com/Richarll/article/details/6246106</guid><author>Richarll</author><pubDate>Sun, 13 Mar 2011 11:38:00 +0800</pubDate><description><![CDATA[ 怎么快速查找我要的资料呢Submit: 4398   Accepted:800Time Limit: 2000MS  Memory Limit: 65536KDescription前不久，北影、中戏等艺术学院开始招生考试，初试结束后，校方会贴出一张大榜单，上面是通过初试获得复试资格的考生名单。考生和家长一大早都来看榜，但是一面墙那么大的名单，要看很久才能看完。怎么能快一些呢？一般来说，名单按姓氏笔画或拼音字母排序，是一张有序表，这就让我们想到了基于有序表的二分查找算法 binarysearch, 而我们学]]></description><category></category></item></channel></rss>