摘要: 今天在把 VLC 的代码转成 JAVA的过程中,遇到了一个让我困惑的问题对象间的赋值到底是怎样的就以前我的了解,JAVA的参数传递看似是引用传递,其实也是值传递,是把对象的地址拷贝后赋给 函数的参数,例如void set(object a1){ a1.set(" hello"); a1=new Object(" world");}在这里原来的对象只执行了第一布,而第二步没有执行。因为new 命令把新的地址给了a1,a1和函数的传入参数的地址已经彻底没有关系了。另外,JAVA中的对象赋值都是浅拷贝,也就是两个对象共同拥有同一个值,一个对象改变了这个值另外一 阅读全文
posted @ 2014-03-24 15:55 crowinhell 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 派生类对象也“是”基类对象,但两者不同。派生类对象可以当做基类对象,这是因为派生类包含基类的所有成员。但是基类对象无法被当做成派生类对象,因为派生类可能具有只有派生类才有的成员。所以,将派生类指针指向基类对象的时候要进行显示的强制转换,否则会使基类对象中的派生类成员成为未定义的。总结:基类指针和派生类指针指向基类对象和派生类对象的4中方法:1.基类指针指向基类对象,简单。只需要通过基类指针简单地调用基类的功能。2.派生类指针指向派生类对象,简单。只需要通过派生类指针简单地调用派生类功能。3.将基类指针指向派生类对象是安全的,因为派生类对象“是”它的基类的对象。但是要注意的是,这个指针只能用来调 阅读全文
posted @ 2014-03-18 11:19 crowinhell 阅读(8226) 评论(0) 推荐(1) 编辑
摘要: java方法参数传递小结:基础数据类型(int,char,……)传值,对象类型(Object,数组,容器……)传引用。有说java方法参数都是传值的,理解方式不同而已。引用本身也是值(对象地址)。传值方式,传递的是值的副本。方法中对副本的修改,不会影响到调用方。传引用方式,传递的是引用的副本。此时,形参和实参指向同一个内存地址。对引用副本所指向的对象的修改,如修改对象属性、容器内容等,会影响到调用方。对引用副本本身(对象地址)的修改,如设置为null,重新指向其他对象,不会影响到调用方。只要知道传引用时,也是传递的引用的副本,就比较容易理解了。我们首先用一段代码来证实一下为什么Java的对象参 阅读全文
posted @ 2014-03-14 15:25 crowinhell 阅读(2764) 评论(0) 推荐(0) 编辑
摘要: In C++ marking a member function const means it may be called on const instances. Java does not have an equivalent to this把一个类到成员函数标记为const表示它只能被const的实例调用class Foo {public: void bar(); void foo() const;};void test(const Foo& i) { i.foo(); //fine i.bar(); //error}In Java the final keyword ca... 阅读全文
posted @ 2014-03-13 17:04 crowinhell 阅读(1976) 评论(0) 推荐(0) 编辑
摘要: JAVA – 虚函数、抽象函数、抽象类、接口1. Java虚函数虚函数的存在是为了多态。C++中普通成员函数加上virtual关键字就成为虚函数Java中其实没有虚函数的概念,它的普通函数就相当于C++的虚函数,动态绑定是Java的默认行为。如果Java中不希望某个函数具有虚函数特性,可以加上final关键字变成非虚函数PS: 其实C++和Java在虚函数的观点大同小异,异曲同工罢了。2. Java抽象函数(纯虚函数) 抽象函数或者说是纯虚函数的存在是为了定义接口。 C++中纯虚函数形式为:virtual void print() = 0; Java中纯虚函数形式为:abstract void 阅读全文
posted @ 2014-03-12 14:54 crowinhell 阅读(2335) 评论(0) 推荐(0) 编辑
摘要: 编译环境 ubuntu 13.04,已经编译过ffmpeg,opencv1.error找不到usleep,未定义 usleep好像是linux下的进程的 sleep函数在/libdash/qtsampleplayer/libdashframework/portable/中的MultiThreading.h中添加 unistd.h2.astThreadedCreation.o: undefined reference to symbol 'pthread_create@@GLIBC_2.1' /usr/bin/ld: note: 'pthread_create@@GLIB 阅读全文
posted @ 2014-03-06 15:34 crowinhell 阅读(1619) 评论(0) 推荐(0) 编辑
摘要: 两天时间写了个爬虫,问题多多1.正则表达式考虑不完整,数据出现浮点数,整数,没有都有可能,正则表达式不规范要么取不到数据,要么取到错误的数据,由于没有及时检查,导致整个攻击增加没有取到,简直是严重失误,不过也只能这样了2. python 版本更替,2.7和3.3 差别太多,内部编码方式和整个urllib库 都有很多改动,导致网上代码参考价值较小,给整个变成过程造成了阻碍等发现这个问题的时候,基本代码已经写完,再改也来不及了3.事先调研不清楚,LOL数据在很多网站都有,开始写爬虫的时候并没有调查多个网站,而是随便选了一个178作为爬取网站,结果遇到了反爬虫系统(估计是),如果多调查几个网站,说不 阅读全文
posted @ 2014-02-28 10:53 crowinhell 阅读(513) 评论(0) 推荐(0) 编辑
摘要: 好久没更新了,最近也不知道在忙什么,稀里糊涂的过去了两周都没看代码,估计已经不会写代码了,。2013年近实验室,主要是做android方向的多媒体开发,这一年过来虽然做了点东西,但最主要的是走了好多弯路感觉也没什么好总结的,至少处理解决问题的能力比以前好多了,虽然写代码能力还是一坨屎意识到“精通”一个语言是很有必要的下年先从破解入手吧,游戏这块,一年做不出什么东西,也没必要把自己框的太死,做策划也挺好希望2014年能掌握android破解+精通一门脚本语言 阅读全文
posted @ 2014-01-15 14:23 crowinhell 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 为了编译DASHEnCoder需要编译ffmpeg,gpac,x264x264和ffmpeg都还好,但是gpac遇到了问题首先是ffmpeg版本可能不对,报错少av_format_allc,改成最新的2.1的ffmpeg后不报这个错误然后gcc报错,好像是依赖库的顺序问题http://stackoverflow.com/questions/9934549/very-strange-linker-behavior但是我又找不到在哪里执行了这个gcc命令,只能GG最后通过博客http://blog.csdn.net/zzulp/article/details/7030976把编译不能通过的功能在. 阅读全文
posted @ 2013-12-27 15:38 crowinhell 阅读(187) 评论(0) 推荐(0) 编辑
摘要: http://rogerdudler.github.io/git-guide/index.zh.html 阅读全文
posted @ 2013-12-26 11:24 crowinhell 阅读(131) 评论(0) 推荐(0) 编辑