idea
文章平均质量分 64
攻城诗赋
printf("Hello world!");
展开
-
字符串匹配Sunday算法实现
今天稍稍度娘了一下匹配字符串的算法,主要搜索结果还是源自CSDN。其中一篇《字符串匹配算法总结》介绍了好几种字符串匹配算法,写的非常好。我挑了其中作者也比较推崇,比较新,效能比较好,算法又比较简单的Sunday算法,稍加揣摩,然后发现贴的实现代码,居然和算法描述的从右往左比对是冲突的,因此我断定贴的代码是错的。仔细看就能发现从左向右比对,很容易会跳过一种匹配,如从a1a1a2寻找a1a2,就会匹配失原创 2015-05-17 21:27:00 · 592 阅读 · 0 评论 -
一种简洁的流式推送文件分享法
所谓简洁是相对于P2P多端同时协商同时获取数据, 同时还分享分发数据的复杂逻辑而言的. 这里要提的”流式推送”法, 是要简单的多的方法. 我会简单分析一下. 玩过魔兽War3 RPG的人常常遇到要从主机那里获取自己没有的地图的情况, 自己名字前面会有一个0~99变化的数字. 那么不知你有没有注意观察和思考过,当一个房间4个人,只有主机有地图的情况下, 另外3个人是怎样拿到地图的? 经过我的观察和原创 2015-05-17 17:42:59 · 1260 阅读 · 0 评论 -
不重载new操作符如何代码实现内存泄漏检测
之前在win平台写代码的时候,对于内存泄漏的检查,是依赖于MS提供的一些机制,使用了诸如malloc_dbg,free_dbg这样的函数,内存泄漏的输出也是自动产生。由于工作的原因现在更多接触linux平台,就开始思考自己实现一个这样的东西,哪怕是简化版,或者能比较像样的达到目的也行。于是开始试着重载operate new 刚开始还是挺顺利的,在operate new里面,用malloc函数去分配原创 2015-05-17 21:02:47 · 578 阅读 · 0 评论 -
一种方便的动态库动态加载机制
动态加载动态库在很多时候的用户体验都比较好,可以检查发现缺失的文件,可以让可选的模块缺失而继续工作。但是动态加载涉及很多函数定义,函数寻址。写来写去非常繁琐且没有技术含量,遇到C++类导出基本没辙。这里我介绍我使用的一种方便使用的动态加载机制。 简单的来说就是将欲导出模块封装成类,定义一个纯虚函数类,模块的实现部分做成纯虚函数类的单例。模块仅导出两个函数,一个是创建模块实例,返回虚基类指针;一个是原创 2015-05-17 21:38:50 · 709 阅读 · 0 评论 -
多点旋转计算磁吸角度算法探究
多点触控操作对象时,对象自由旋转。但是如果想要正向摆放,光靠两个手指,非常困难,除去精度问题,手指抖动再所难免,所以有必要为旋转添加一个磁吸特性。 所谓磁吸就是当旋转到0度、90度、180度、270度附近时,对象角度被吸入,当继续操作超过一定度数,操作才能继续。QT QGraphicsItem有roation和setRotation,使用的都是度数值。当要做磁吸效果时,不能当真调用setRot原创 2015-05-17 21:42:33 · 1150 阅读 · 0 评论 -
双向同步时撤销重做设计思路
其实要说撤销重做的设计思路,其实没有啥特别的.这里主要还是针对双向同步的情况. 同步时有的人在增,有的人在删,况且操作因为网络的问题还有滞后性,又不能先协调后生效(这样同步体验太差), 一想就是一团乱麻.单机撤销 首先来说单机情况的撤销重做. 通常的思路就是做一个操作链:[START]~_p_[END] 一个当前指针pNow指向[END] [START]~[+A]~[+B]~[+C]~[-C]~原创 2015-05-17 17:38:05 · 786 阅读 · 1 评论 -
安装安卓SDK之曲线谷歌dl-ssl
不知道前辈们开发安卓的时候是怎么获取sdk的,使用离线从别处下好后自己放到对的地方?太复杂而且易错。而我首先想到的是代理方式,用上和谐小白鸽……这个方式暂不提。今天我使用ubuntu来折腾sdk,没法用和谐小白鸽。于是到处搜索找曲线救国的办法。然后找到一篇百度经验《dl-ssl.google.com》(标题有点奇怪)顿时觉得国人的智慧真是不可估量啊。 详细内容不赘述,大致说一下,就是用站长ping原创 2015-05-17 20:51:51 · 658 阅读 · 0 评论 -
BitComet种子torrent内容解析
种子文件torrent里面都写了些啥,咱这里来个真相大公开!// ## BitComet torrent ## (BC)代表BitComet制作的种子中存在,可能比较特别的字段 所有的.utf8估计也是BC采用的,wiki上表示所有编码都应该是utf8的[dict根字典]|-{announce}={#tracker服务器#}|-{announce-list}=[#tracker-list更原创 2015-05-17 21:06:54 · 2306 阅读 · 0 评论