hubdog's blog

unix下运行shell脚本容易遇到的问题

注意语句中要有#!/bin/sh

另外注意文件格式一定要是unix的,否则会报Bad interpreter的错误, 可以用dos2unix来转换

升级Google appengine sdk遇到的问题

今天因为需要用一个多年前写的google appengine gwt的项目,升级了一下 gap sdk,然后用gwt重新编译原来的工程,结果报错,

后来将windows 的环境变量的classpath删除后就好了.

 

还有一点要注意的就是发布完app,一定要清空firefox的缓存。

 

Ubuntu的Unity界面太丑了

忍无可忍,换成cario dock了

安装参见 http://lavafree.iteye.com/blog/1202914

Ubuntu下sudo无法使用自定义Path的问题

Ubuntu下面有一个secure path的特性,每当sudo时,系统会重置path环境变量,导致自定义的path变量无法被使用,解决办法

sudo visudo
添加Defaults !secure_path在Defaults env_reset的后面就可以了。

关于标准模板库容器size()函数的性能

在最新的C++标准中规定,所有的C++标准模板容器的size()函数的复杂度都应该是常数时间O(1)的,但是实际上很多编译器带的标准模板库的size()函数的复杂度是O(n)的,比如gcc的最近的版本才改成了O(1),微软的msvc好像新版本已经全部是O(1)的了,所以我们要注意下面的语句在容器内元素很多的时候可能会是性能杀手。

for  ( xxx ; container.size()>xxx; xxx)

使用CUnit进行单元测试的一些窍门

其实用CUnit进行单元测试很容易,因为C语言本身提供了宏替换这个强大的工具,可以很容易的实现非侵入式的测试。这里我们只讨论linux下使用gcc进行单元测试的情况,msvc不在讨论范围。

 

1.测试static的函数,static的语义是只有同一单元的代码才能访问static的函数或者变量,为了绕过这个限制,我们的测试 程序,需要直接

include待测试的CPP文件

 

#include "test.cpp"

 

2.比如C++类中有很多成员或者是private隔离级别的,测试时为了确认测试结果,很多时候需要调用这些函数,我们可以利用宏定义来绕过这些限制

#define protected public
#define private public

#include "test.cpp"

3. 比如有时我们想让标准函数fgets失败,来测异常情况,但是真正的失败有时很难做出来,那么我们就需要利用宏定义来替换指定的函数

#include <stdio.h>

现在的围棋程序真的好厉害

zen的慢棋在24核集群上已经达到了业余6段的水平了,让4子赢了武功正树20目。

找了免费的pachi,下了一盘,平手下赢得非常困难,感觉有2k的水平。据说在8核i7上有强业余1段的水平。 

Firemonkey For IOS就是一个玩具

靠这两天研究用Delphi XE2的Firemonkey写Iphone程序,那东西需要用dpr2xcode将工程转换为xcode的工程,结果那个破玩意,运行后报了一堆错误, 说它无法解析source,报了一堆错误,居然没有错误行号,Error还错拼成了Errror,原来的程序是老毛子写的,狂汗一下。只有使用人肉编译, 一点点排错,接着发现firemonkey for ios用的是free pascal编译器,可delphi的rtl很多地方都是用泛型写的,free pascal的泛型语法跟delphi完全不一样,只要是用到泛型的单元全不能用,还是等emb出arm编译器吧,现在的ios支持纯属扯淡。也就是 mac 的支持还有点意义。 

FFMPEG Vcl Pack For Delphi 2.2发布了

新版的FFMPEG Vcl Pack增加了DirectShow设备俘获和音频过滤器的初步支持 (Beta)

下载地址:http://www.flashavconverter.com/downloads/ffmpegvcldemo221.zip
 

小说更新监视精灵(Novel Update Monitor)

做了一个Android版的小说更新监视精灵。

利用小说监视精灵,您可以登录关注喜爱的起点/纵横小说,随时监控小说更新情况,并可以接收推送消息,实时获取小说更新信息。

注意:接收实时推送通知需要手机通过WIFI或者3G在线。同时本应用支持窗口小部件(Android Widget)。

 小说更新监视精灵添加收藏小说更新监视精灵收藏列表小说更新监视精灵推送通知

小说更新监视精灵操作菜单小说更新监视精灵窗口小部件

下载地址

http://www.aimi8.com/app/6011448_1_0.html

更新:

Iphone版的终于审批通过了

http://itunes.apple.com/us/app/novel-update-monitor/id443577286

Syndicate content