[原创] Protocol Buffer Basics: C++中文翻译(Google Protocol Buffers中文教程)

Protocol Buffer Basics: C++Protocol Buffer基础:C++篇)


注:这是本人的翻译,可能不准确,可能有错误,但是基本上可以理解,希望能对大家有所帮助!(转载需注明出处:本文来自learnhard的博客:http://www.codelast.com/ http://blog.csdn.net/learnhard/

[原创] something about Google Test(Google C++ Testing Framework)

 

先说说cxxtest这个测试框架:用cxxtest来编写测试用例时,我们需要写的只是一个.h文件,在这个文件里include你要测试的类或函数所在的头文件,然后写各种测试函数。与该.h文件对应的.cpp文件是用cxxtest自带的一个脚本cxxtestgen.pl来生成的(脚本调用方法请看cxxtest手册),然后我们就得到了一个.h文件和一个.cpp文件,用gcc/g++编译,得到一个可执行文件,运行此文件,就执行了你所编写的测试用例。

阅读更多

[原创] something about Google Mock / gmock使用小结

本文基于gmock版本:1.5.0,本文内容不保证对后续版本一定正确。

下载gmock:http://code.google.com/p/googlemock/downloads/list

安装:将下载的压缩包解压出来,到解压目录下执行:

./configure

然后执行:

make

注意,这个make不会编译Google Mock自己的测试用例。要编译它们,需要到解压目录下的“make”子目录下,执行:

make gmock_test

阅读更多

[原创] 用shell判断一个字符串是不是全为数字 & 截取字符串的若干示例

文章来源:http://www.codelast.com/

 

(1)判断一个字符串是不是全为数字

#!/bin/sh

# 该变量就是要判断的变量
VAR="1234908"

RET=`expr match $VAR "[0-9]*$"`
if [ ${RET} -gt 0 ]; then
	echo "It is a Number!"
else
	echo "Not a Number!"
fi

文章来源:http://www.codelast.com/

另外要注意:用这种方式来判断负数的时候,也认为不是全为数字的,因为负数中带了一个负号,就不是数字

阅读更多

[原创]在Linux下进行文件“粉碎”/擦除

文章来源:http://www.codelast.com/

 

众所周知Windows下的文件删除之后是有可能恢复的,对重要文件,为了增加恢复的难度,我们可以用文件粉碎工具进行文件粉碎。我最常用的是集成到资源管理器中的Eraser。那么在Linux下有没有类似的软件呢?我在一台只有Ubuntu系统的主机上,安装了一个文件粉碎工具wipe,有些想法,记下来。

安装:apt-get install wipe

wipe有没有GUI我不知道,命令行也不难用:

阅读更多

emacs解除read-only的buffer锁定

如果你用emacs打开一个文件,却编辑不了它(提示该buffer是read-only的),那么用Ctrl-x,Ctrl-q就可以解除锁定。

文章来源:https://www.codelast.com/
➤➤ 版权声明 ➤➤ 
转载需注明出处:codelast.com 
感谢关注我的微信公众号(微信扫一扫):

wechat qrcode of codelastRead More

如何用VC 2005打开VC 2008的工程

 

注意:

这里说的只是用Visual Studio 2005打开Visual Studio 2008创建的C++工程,并不是说可以通过编译。

有时候我们只是想有结构地看看VC 2008的项目代码,并不想为此再安装一个VS 2008,所以只想让VS 2005能打开VS 2008的工程就可以了。

要修改的有两个文件:

阅读更多

[原创]Ubuntu配置(杂)

本文很杂,主要是记录自己配置Ubuntu的过程中遇到的问题及网上搜到的解决方法。部分内容是网上搜来的,部分内容是自己写的。

本文在逐渐添加内容,期间经历了多次Ubuntu版本的升级,因此,下面的每一个条目不一定适用于每一个Ubuntu版本。

 

阅读更多

Linux下MySQL开放root的远程访问权限 & 其他一些常用操作记录

(1)Linux下MySQL开放root的远程访问权限

环境:RHEL 5.3

安装了MySQL之后,MySQL的root用户默认是不开放远程访问权限的。为了开放它,只需要两步:

用Linux系统的root用户登录系统,然后:

开放3306端口的远程连接权限:

阅读更多

[原创]用GDB调试Segmentation Fault错误

 

调试Linux程序的时候,出现Segmentation Fault是最郁闷的事情了,程序代码量很大的时候,可能花很多时间都找不到出错原因。

这里介绍一种对你调试Segmentation Fault很有帮助的方法,可能能迅速帮助你找到出错的代码行。

阅读更多

[原创]在CHtmlView中,判断一个页面加载完成的准确方法

 

凌晨了,但是关于这个问题一定要记录下来,要不然以后不记得了,还得走弯路。

在做一个测试的时候,为了便于自动操作,用VC写了个软件来代替人工操作。简单地说,功能就是:不断地刷某URL,服务器那一端的程序会返回另一个URL,要看服务器端程序会不会出问题,同时要记录一些信息。

两年多以来一直用VC开发,但是从未开发过浏览器相关的程序,这次我只能仓促上阵:用CHtmlView来实现一个超简浏览器,然后判断页面是否加载完成,在页面加载完成后再做后续处理。

阅读更多

不要指望用同步方式同时收、发串口数据

 

很久以前记下的一条血的教训,当时折腾了很长时间,才从书上看到这个结论。串口通信时,如果你希望数据到达能监听到,那你可能会为了简单,而使用同步方式来实现数据的收发,用SetCommEvent来设置数据到达事件提醒,在监听线程中使用WaitCommEvent来等待数据的到达,数据一直没来,这时你又想要发送数据,于是用WriteFile来写,但此时你会发现,程序会锁死,为什么?如何解决?

阅读更多