- 博客(32)
- 资源 (14)
- 收藏
- 关注
原创 如何从后台子shell中把状态传出来
bash中在管道或 {}& 语句块中的变量状态是不会反应到外部的,比如下面2个例子,ret返回都是空字符串cat $file | while read line ;do ret=$linedoneecho $line for i in `seq 5`;do{ test $i -le 4 if [ $? -ne 0 ];then ret=1 fi slee
2013-08-01 09:51:07
1358
原创 PullToRefresh的使用
作者对使用方法介绍的很简单。详见:https://github.com/chrisbanes/Android-PullToRefresh/wiki/Quick-Start-Guide我这里写一下自己的一些收获:1. 导入PullToRefresh库,方法详见 http://developer.android.com/tools/projects/projects-eclipse.html#
2013-05-26 22:09:29
20873
原创 pull_to_refresh debug
好久没有写博客了。主要是工作太忙了 + 自己开始变懒了。忏悔一下今天研究了一下PullToRefresh[https://github.com/chrisbanes/Android-PullToRefresh]的机制,就是下拉然后自动刷新的功能,其实还是不太懂。不过先把自己已经搞清楚的写一下1. PullToRefreshListView(PullToRefreshBase).on
2013-05-26 21:53:15
1879
原创 android 的自签名机制
花了半天时间,终于算是把android的证书机制搞明白了。关键就是keytool和jarsigner。keytool用来查询密码和创建证书,证书以keystore的形式存在。一旦证书创建好之后就可以通过"密码"来查询sha1签名。在生成sdk的时候,adt会使用密码和jarsigner给jar文件签名,同时jarsigner把证书存放到 block file of the JAR file内部
2013-03-30 11:17:34
1125
原创 google map学习
前几天学习android开发,昨天想学习一下google map,把我昨天的低级错误总结一下吧:1. 申请app key的时候填的工程名必须和你实际的工程名一致。否则就无法返回地图。google这点确实比较死板。2. 一步一步按照 https://developers.google.com/maps/documentation/android/start 的说明来。我的错误是:把放在了
2013-02-03 09:21:44
505
翻译 JavaScript Module Pattern: In-Depth
本文翻译自大牛ben cherry的博客:http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth 。对自己的英文很有自信的同学可以直接去这个地址看原文。翻译能力有限,欢迎指教~~================ 正文 ================= Module pattern 是
2012-10-21 19:24:54
2142
原创 留意shell变量作用域
shell变量的作用域大部分都是全局的。这点非常不好。经常会造成意想不到的后果。所以强烈建议在定义每一个变量时都先声明为local的。举例如下:f1.sh:function f1() { line="f1,hhaha"}f2.shfunction f2() { local line="" read line
2012-09-23 16:29:27
2225
原创 新浪微博应用开发者协议真坑爹啊!
注册新浪微博应用开发者时,你看过《应用开发者协议》吗?你知道有几条吗?知道里边的陷阱有什么吗?我相信没有几个人会那么无聊地去看那10339个字。但仔细读了《协议》后,你会发现,你就是“爹”,而协议里全是坑!各位看官注意了:2.8.4 因新浪微博开放平台运营的实际情况需求,新浪可能额外要求开发者增加或修改应用特性或参与运营活动,开发者有义务配合且新浪无需为此向开发者支付任何费用。意思就是
2012-09-01 11:04:31
3173
原创 把python安装到非默认路径
在公司测试机上没有root权限,只能安装到非默认路径下:(默认好像是/usr/local) 1. 运行 ./configure --prefix=install_path,脚本就会自动安装install_path指定的路径生产make文件 2. 运行make 3. 运行make install。就把py
2012-05-19 11:34:31
14153
转载 Vim改变窗口大小
(转载)Vim改变窗口大小 改变窗口大小 *window-resize**CTRL-W_=*CTRL-W = 使得所有窗口 (几乎) 等宽、等高,但当前窗口使用 'winheight' 和'winwidth'。:res[ize] -N *:res* *:resize* *CTRL-W_-*CTRL-W - 使得当前窗口高度减 N (默认值是 1)
2012-05-14 14:54:55
6843
原创 screen 多窗口终端管理器
在用secureCRT登陆远程服务器时,如果电脑关机、断网或secureCRT异常退出,那么原来运行在远程服务器上的程序也异常退出。有的时候这种情况防不胜防。而如果使用screen管理器,那么即使出现上述情况,还是能够恢复原来的窗口,其中的历史信息依然存在,之前运行的程序依然在正常运行。 screen是在原来的终端上开了好几个线程形成的虚拟窗口。即使终端异常退出,这些线程依然存在,只
2012-05-11 13:32:23
1952
原创 五一中关村--买手机历险记
五一的时候跟室友去中关村买手机,去之前就有人告诫我们说:中关村的水太深,最好去网上买。当时我有点不以为然,而且也想去看看js都长啥样。于是就和一个室友去了。 我们是下午2点多去的,然后一直在看手机。这些商家确实有点霸道,去了就问你今天拿不拿机子,如果不拿就不给看手机了。不过我们还是看了几家,感觉店家的报价都差不多。没什么好挑的。这段期间的情节都很无聊,略去……JS的把戏在后面。晚
2012-05-06 15:05:11
900
原创 STL sort函数--对map按值排序
问题:要对以map中的数据进行按value排序难点:map中的数据是按照key排序的,用for循环进行迭代器输出的顺序,就是按照key排序的顺序。但是按value排序就不可能了。方案:STL中的sort函数原型:#include using namespace std;template void sort ( RandomAccessIterator first, R
2012-05-04 22:25:09
22769
2
原创 calloc或new分配的数组只能在第一个元素上释放
前几天写了一个开链hash表,结构如下:*node1 -->next-->next->...*node2 -->next-->...*node3 -->...*node4 -->next-->next->next-->...即首先创建一个Node数组,该数组由calloc分配,然后每个node又在后面跟着一个长链表。这样在最后释放的时候就出现了问题:我用递归的方
2012-04-24 11:14:05
1350
原创 sprintf 陷阱--Segmentation fault
有时为了构造特定的字符串,我们经常会使用sprintf函数。但是在linux中,该函数是不安全的。建议使用snprintf来指定写入的字节数。如下例所示:#include #include int main(int argc, char* argv[]){ char str[18]; int *pa = (int*)calloc(8, sizeof(int)); sprint
2012-04-24 11:02:14
5356
原创 SIGPIPE信号结束进程.
对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程。而这种行为一般不是我们希望的。在我的爬虫程序中就出现了这种问题,原因还不清楚。。为了进行后续处理,下列方法可以避免程序退出:struct sigaction sa;sa.sa_handler = SIG_IGN;sigaction( SIGPIPE, &sa, 0 );当然
2012-04-22 17:36:42
582
原创 在linux下创建静态链接库和编译链接
创建静态链接库: 如hashlib g++ -c hash.c ar -r libhashlib.a hash.o # 注意archive文件的名字为libhashlib.a。否则在链接的时候会提示cannot find -lhashlib编译链接 在gcc/g++编译时,一定要注意各个文件的依赖顺序
2012-04-22 17:29:13
621
原创 Discriminative model vs Generative model
Discriminative model(判别模型): 对p(y|x)建模,只能计算在给定特征x情况下,目标y出现的概率。可以认为是对特征x的判断,故称为判别模型。一般都是监督训练,很难改造成无监督的。在分类问题上可能比generative model好一些。Generative model(生成模型): 对p(x|y)和p(y)建模,利用这个模型,我们可以模拟生成各个特征数据
2012-04-20 18:00:25
905
原创 python笔记(二)
1. zip函数。可以把两个长度相同的list组合成一个相同长度的二元tuple,如 x =[1,2,3], y = [11,22,33],那么 t = zip(x, y) 得到t = ((1, 11), (2, 22), (3, 33)), 而 x, y = zip(*t)得到原来的x,y2. sorted(iterable, key=None, reverse=False)函数,按照指
2012-04-15 18:20:31
724
转载 python学习笔记(一)
Python的模块名与类名是在两个不同的名字空间中,初学者很容易将其弄混淆。比如你在交互界面输入import HTMLParser,此时你其实并没有把类HTMLParser引入到当前名字空间中。type(HTMLParser)的结果是<type 'module'>,而type(HTMLParser.HTMLParser)的结果才是。所以如果你想引入HTMLParser这个类,一定要写fro
2012-04-15 17:58:51
13605
1
原创 多线程网络爬虫
最近用C在linux环境下搞了一个多线程网络爬虫,真是历经坎坷啊。现在把自己的教训总结一下:尽量不要使用静态数组,如 char path[200] 之类的。不要以为网址的path“应该”不长。有些网页在302重定向时,会提供一个特别长的path。这可能是由编程人员的疏忽导致。不管怎么样,如果path溢出,那定义在path之后的变量就全部被损坏了,从而导致不可预知的错误。检查calloc
2012-04-15 17:45:08
2882
原创 关于Pimpl技术
一般情况下,在设计类时,私有成员变量和函数一般都设成值类型,这样做有三点不妥:1、增加了编译时间。若“私有成员变量”或“私有成员函数的参数”都是值定义的,那么在编译这个类时需要这些对象的完全定义。而如果这些类型的头文件里又包含了很多其他类(尤其对一个大的项目更是如此),那么编译时间将会相当长;2、使名字查找和匹配产生多义性。在C++中,可视性(visibility)和可访问性(accessibility)是不同的。这主要体现在名字匹配过程中。public、protected和private限制的是可访问性,
2010-09-29 10:32:00
797
原创 重载Object类的equals函数
在java中不能由用户重载 “==”操作符,只能重载Object类的equals函数。这里列出了重载时的一般流程和注意事项:(引自Core Java 2)import java.util.*;class Employee{ public Employee(String n, double s, int year, int month, int day){ name = n; salary = s; calender = new GregorianCalendar(year, mo
2010-09-28 19:55:00
1027
原创 关于Java里面的传值调用
很多人都把Java里面的“变量”说成是指向实际内存的引用,Thinking in Java中把这种变量称为句柄变量,而不是引用。这是有一定道理的。因为称为“引用”很容易令C++程序员迷惑。实际中Java中的机制和C++中的引用是不太一样的,尤其是在参数调用时。请看下面这段代码:import static java.lang.System.*;class Something{ private String name; public void setName(String nm) { na
2010-09-28 16:23:00
555
原创 多项式加乘操作--小结
今天使用链表实现了一下多项式的算术加和乘操作,为了节省存储空间同时增加运算效率,链表中只存储了系数非零的项。同时还定义了默认构造,复制构造,赋值运算,operator其中Polynomial.h的代码如下:#pragma once#include "iterator.h"#include class factor{public: int Exp; double
2010-04-15 17:22:00
634
原创 zzOPENCV XML函数完美支持中文方法
XML即extensibe markup language的缩写,也就是可扩展标识语言。由于其开放性,越来越多的软件采用它作为描述语言;由于其平台无关性,越来越多的系统采用它作为数据传递中介。计算机行业已经把XML为数据交换的标准,并提供了相当数量的支持工具。但是,C++中解析xml还依然不够完美,特别是对于中文字符集的支持。大家总是遇到各种问题,本文改进了OPENCV
2010-04-13 19:30:00
733
原创 链表逆序小结
最近想找些笔试题练练,于是就看到了微软05年的一道面试题:给定一单链表的表头指针和指向其中一个节点的指针,要求以该指针为头将原链表逆序排列,例如: N1->N2->N3->N4->N5->NULL pHEAD = N1,pSTART = N3,返回N3->N2->N1->N5->N4->NULL N1->N2->N3->N4->N5->NULL pHEAD = N1,pSTART = N5,返
2010-04-13 15:18:00
2092
原创 CvMat学习(1)
运行如下这段代码:double arr[] = { 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0,11.0,12.0}; CvMat mat1 = cvMat(4, 3, CV_64FC1, arr), mat2 = cvMat(3, 4, CV_32FC1, arr), mat3 = cvMat(4,
2010-04-08 15:18:00
824
原创 Learning OpenCV(0)——关于cvPtr*D系列
最近在看Learning OpenCV,刚看到第三章的Accessing Data in Your Matrix就卡住了,惭愧啊。查找了很多资料终于弄明白了。 首先介绍一下cvPtr*D系列函数,它们都是用来获取CvMat矩阵中指定索引值的数据的。查了一下OpenCV安装目录下的手册,居然发现所有cvPtr*D函数的返回值都是uchar*!这就奇怪了,CvMat矩阵是可以存储多种数据结构的
2010-04-07 08:53:00
3817
流畅的python
2017-06-17
angular js代码食谱(recipes with angular js)
2015-12-01
LINGO中文教程(案例+函数解释)
2009-05-15
NIOS II常用函数
2009-05-15
Avalon 总线最新接口标准综述
2009-05-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人