当前位置 : 首页

绫辻行人《杀人暗黑馆》读后感

  日本本格派推理大师绫辻行人的馆系列作品已经读了几本了,给人的感觉是酣畅淋漓,一上来稍作铺垫就开始进入紧张刺激的案件推理侦破中,场景设置尤其吸引人,仿佛身临其境,跟随作者来到一个个神秘怪异的建筑中,让人总想不停歇的一口气读完。
  直到两个月前开始看《暗黑馆》,感觉这部作品和其他的馆系列风格有些差异。前50%貌似都是在叙述一些零碎的平常小事,和案件关联不大(其实是有关系的,到最后解开真相时会认识到前面已做了铺垫,这是推理小说的惯用写法,我也养成了在一开始就努力去把握那些貌似不相干却又稍显怪异的情节,但总感觉这部作品更加难以把握)。所以前50%读起来真的很考验人的耐心,好几次想放弃啊,因为实在是无法抓住我的心。期间上网查了些读后感,都说读完后会发现真的是一部好作品,所以继续每天一点的耐心读,看前50%大概就花了2个月的时间(我是每天晚上睡觉前读几十分钟,也不保证每天都看)。

利用AppFace美化VC程序

http://www.appface.com 去下载AppFace的安装程序,安装好后,你会发现它的include文件夹下有个appface.h文件,lib文件夹下有appface.lib和appfaceu.lib(UNICODE版本),并且在 skins文件夹的子文件(basic和powerful)下有以.urf皮肤文件,这三(四)个文件都是我们将要用到的。
下面我讲讲怎么把它加入到我们的程序中

最近琢磨出了个测试数据的小技巧

在VC中,以前测试从数据库取出来的非字符串数据时,比如测试取出的整形数据,只会建个编辑框控件,通过控件输出整形的值来看对不对。测试字符串类的还好说,用MessageBox输出看看就行。这样很费劲,测试完还得删除控件和相关变量。
现在琢磨出个小技巧,比如测试从数据库取出的一个整形a,已经知道它在数据库中的值为5,我们就可以用个判断语句:if(a == 5) MessageBox(“a的值为5”); 这样来测试访问数据库的过程是否正确。
2017.7.15:整理之前的笔记时有感,学生时代的代码太幼稚了,根本没有单元测试的概念啊,还TMD小技巧,太low了!

今天看腾讯在北航的演讲《1亿在线背后的技术挑战》想到的关于MD5算法

看2011年10月31日腾讯即通平台部高级总监庄泗华在北京航空航天大学的演讲《1亿在线背后的技术挑战》。里面说到,以前版本的QQ登陆密码在向服务器传送时是先经过两次MD5加密。就想整明白MD5是怎么回事,学《网络安全》时讲的各种加密算法早忘了,就去网上查了下。
一句话:MD5(信息摘要算法)可以为任何文件(不管其大小、格式、数量)产生一个同样独一无二的“数字指纹”。

日语五十音图速记法

明王道日语课程中老师教的日语五十音图速记法

2011年考研失败总结

  本人是鲁东大学2011届毕业生,计算机系网络工程专业,2011年报考北京航空航天大学计算机系软件与理论专业,初试成绩370分,其中数学127,专业课113,英语55,政治75,还算比较高的分数,而北航计算机学院2011年的分数线是345分,本来很有希望被录取,但复试被无情的刷下来,连工程硕士也没上成,倍感可惜之余,也让我更加清醒的认识到自己的不足。

C++中#define宏定义中的#,##,@#

先看下面三条语句:

  • (1) #define Conn(x,y) x##y
  • (2) #define ToChar(x) #@x
  • (3) #define ToString(x) #x

基于ipv6的socket通信(TCP)

实现代码如下:

回调函数在MFC中的使用

我们知道如果试图直接使用c++的成员函数作为回调函数将会发生错误,甚至编译就不能通过。其错误的原因是普通的c++成员函数都隐含了一个参数,亦即this指针,由于this指针的作用,使得回掉函数与普通的C++成员函数参数个数不匹配,从而导致回调函数安装失败。要解决这一问题的关键就是不让this指针起作用,通过采用以下两种典型技术可以解决在C++中使用回调函数所遇到的问题。

C++动态创建二维数组

c++动态创建二维数组小记

C++按行读写文件(getline函数的用法)

C++中有两个getline()函数
(1)一个是全局函数,在string类中定义(#include<string>),但并不是string类的成员函数,原型如下:
istream& getline( istream& is, string& s, char delimiter = '\n' );