2012年11月8日

【VIM】VIM的使用

摘要: 最近迷上了vim,我想世界上在没有任何能媲美此编辑器的编辑器了,真的是编辑器之神。我常使用的命令是过滤,即%v/text/d和%g/text/d若说你在用记事本或者edit plus或者notepad++时,你需要一个新的功能,很抱歉,发邮件给这些软件的开发者吧,而且他们还不一定会采纳你的意见。但是vim就不同了,你需要什么新功能,自己动手来做吧,这就是DIY精神,这就是一个程序员应该有的精神,不能想着依赖,而是要自己做出来。权且记录下常用的命令吧:Vim 是一个Linux 平台上功能非常强大的编辑器,他是早年的Vi 编辑器的加强版。这个gVim 是windows 版的,并且有了标准的wind 阅读全文

posted @ 2012-11-08 17:24 Kaichd 阅读(478) 评论(0) 推荐(0) 编辑

【GTest】当Gtest用例失败后,做你想做的任何事

摘要: //备注:此文章是joven的分享,正巧对手头的工作有帮助,而且借此可以延伸出一个新的需求:若有个用例在不知不觉的情况下,卡死或者阻塞了下面的用例,怎样来对其进行处理?//这个问题的提出是因为Gtest是同步的,在使用Gtest进行测试时,拉起gtest主线程,通过主线程来控制测试用例的执行,若要解决这个问题,我们就可能需要对Gtest框架进行更改,//最理想的状态是更改gtest的同步执行为异步执行,在进入每个用例时,由Gtest主线程拉起一个测试用例执行子线程,然后主线程进入wait状态,等待子线程的执行退出,再恢复主线程以进入下一个测试用例的执行,//如此便可在主线程里进行超时的判断,若 阅读全文

posted @ 2012-11-08 17:17 Kaichd 阅读(2409) 评论(0) 推荐(0) 编辑

2012年11月2日

【Software Test】测试工程引用被测试工程需要注意的一些问题

摘要: 问题的提出:早上发现我的测试工程在运行时调用一个函数A时会莫名奇妙的访问越界,导致失败,查看call stack发现,函数A调用的实现是在函数A定义的头文件里的下一个函数B,因构建测试机昨晚的自动化并没有出现这种问题,初步断定是编译或者链接的问题,而不是代码的问题。问题的解决:在咨询开发后,发现由于开发加入了新的接口,导致测试工程编译所使用的头文件发生了更改,而对应的被测试程序的DLL和EXE依然是旧版本的头文件编译出来的,这样就会导致测试工程编译出来的EXE里保存虚函数的偏移发生了更改。问题的反思:为了方便,测试工程一直引用的是SVN trunk的头文件,而发布版本会打tags,此时开发会对 阅读全文

posted @ 2012-11-02 11:38 Kaichd 阅读(146) 评论(0) 推荐(0) 编辑

2012年10月29日

【C/C++】标准C++中四种强制类型转换运算符

摘要: 标准c++中主要有四种强制转换类型运算符:const_cast,reinterpret_cast,static_cast,dynamic_cast等等。1)static_cast<T>(a)将地址a转换成类型T,T和a必须是指针、引用、算术类型或枚举类型。表达式static_cast< T > ( a ) a的值转换为模板中指定的类型T。在运行时转换过程中,不进行类型检查来确保转换的安全性。例子:1 class B { ... };2 class D : public B { ... };3 void f(B* pb, D* pd)4 {5 D* pd2 = stati 阅读全文

posted @ 2012-10-29 21:56 Kaichd 阅读(340) 评论(0) 推荐(0) 编辑

【Python】Python中对目录路径的要求

摘要: Python中使用的目录路径一定不能以"\"结尾,否则会报未知符号错误另外Python中的编码不支持VisBuild的output窗口,在python开头处定义了UTF-8输出,然后在下面调用了某个字符串的decode('UTF8'),始终会在VisBuild的output里显示乱码,导致Python程序调用失败,但是在系统的CMD窗口下,却正常工作,即使显示乱码,也不会失败 阅读全文

posted @ 2012-10-29 21:51 Kaichd 阅读(265) 评论(0) 推荐(0) 编辑

2012年10月18日

【C/C++】获取当前进程是否处于系统管理员权限下

摘要: Code1: 1 bool IsProcessRunAsAdmin() 2 { 3 SID_IDENTIFIER_AUTHORITY NtAuthority = SECURITY_NT_AUTHORITY; 4 PSID AdministratorsGroup; 5 6 BOOL b = AllocateAndInitializeSid( 7 &NtAuthority, 8 2, 9 SECURITY_BUILTIN_DOMAIN_RID,10 DOMAIN_ALIAS_RID_ADMINS,11 ... 阅读全文

posted @ 2012-10-18 16:35 Kaichd 阅读(1654) 评论(0) 推荐(1) 编辑

【C/C++】类的sizeof大小

摘要: 初学者在学习面向对象的程序设计语言时,或多或少的都些疑问,我们写的代码与最终生编译成的代码却大相径庭,我们并不知道编译器在后台做了什么工作.这些都是由于我们仅停留在语言层的原因,所谓语言层就是教会我们一些基本的语法法则,但不会告诉我们为什么这么做?今天和大家谈的一点感悟就是我在学习编程过程中的一点经验,是编译器这方面的一个具体功能.首先:我们要知道什么是类的实例化,所谓类的实例化就是在内存中分配一块地址.那我们先看看一个例子: 1 #include<iostream.h> 2 3 class a {}; 4 5 class b{}; 6 7 class c:public a 8 { 阅读全文

posted @ 2012-10-18 15:41 Kaichd 阅读(254) 评论(0) 推荐(0) 编辑

【VisBuild】VisualBuild的Make VS 2005操作MS不会递归查询sln中的静态库的依赖关系

摘要: VisualBuild的Make VS 2005操作MS不会递归查询sln中的静态库的依赖关系解:早上那个visualbuild的编译问题已经解决问题描述:这边的sln里面有个dll工程(1)依赖了一个lib工程(2),而这个lib工程(2)又依赖了两个lib工程(3)(4),在visualbuild里调用make vs 05操作时,dll工程的编译顺序是 (3)(2)(1),而我们期望的编译顺序是(3)(4)(2)(1)初步判断是vs的vcbuild.exe的问题vcbuild.exe貌似不会对静态库的工程进行递归检查编译依赖选项解决方法:dll工程(1)直接依赖lib工程(2)(3)(4) 阅读全文

posted @ 2012-10-18 15:27 Kaichd 阅读(228) 评论(0) 推荐(0) 编辑

重拾cnBlogs

摘要: 今天看到涛总和joven的博客,发现积累了很多在工作中有意义的经验,又发现自己的新文章还是去年的时候了,有时,可能写下对当前问题的领悟,以后,也是一个回忆 阅读全文

posted @ 2012-10-18 15:26 Kaichd 阅读(117) 评论(0) 推荐(0) 编辑

2011年5月4日

数据结构(严蔚敏)的一些排序算法源代码

摘要: 最近找工作时经常会被问到各种排序算法,现在把严蔚敏书中的排序算法摘抄出来,以便随时学习,顺便测试下windows live writer的代码着色插件是否好用 1.InsertSort直接插入排序 隐藏行号 复制代码 ? InsertSort void InsertSort(SqList &L) { // 算法10.1 // 对顺序表L作直接插入排序。 int i,j; for (i=2; i<=... 阅读全文

posted @ 2011-05-04 23:26 Kaichd 阅读(1273) 评论(0) 推荐(0) 编辑

导航