- 博客(38)
- 资源 (8)
- 收藏
- 关注
原创 Andriod学习笔记4——AndroidManifest.xml分析
以如下AndroidManifest.xml为例:http://schemas.android.com/apk/res/android" package="com.phone" android:versionCode="1" android:versionName="1.0" > android:icon="@d
2012-08-18 18:04:16
675
原创 宅气十足
我常常想,如果人类没有发明空调,我也许会在这个阳光耀眼的夏日,穿着我仙仙的雪纺百褶裙,在可以看到亮晶晶的太阳影子晃动的斑驳树荫下散步;也许会叫上几个同事或同学(没有空调,加班的人也少了吧...),跑到有山有水的地方避暑游玩.而此时此刻,我宅在可以一键掌控温度的空调卧室里,把蝉声关在窗外,把阳光挡在窗帘外,不理会树荫,不理会偶尔吹来的凉爽的风,一个人,像与这个世界毫无瓜葛似的,上网,看书,各种吃..
2012-07-21 18:43:41
1673
转载 网络抓包工具分析
原文:http://xiaojiaozhu0.blog.163.com/blog/static/29907512200781543025967/网络抓包分析方法大全 我们知道,网络协议分析软件以嗅探方式工作,它必须要采集到网络中的原始数据包,才能准确分析网络故障。但如果安装的位置不当,采集到的数据包将会存在较大的差别,从而会影响分析的结果,并导致上述问题的出现。 鉴于这
2012-07-02 21:38:11
4515
原创 Android学习笔记3--“Android SDK Content loader has encountered a problem” “parseSdkContent Failed ”
昨天做了一个Android的小程序,调试的时候连接真实的手机,而不是用模拟器。今天早上打开eclipse的时候报错:“Android SDK Content loader has encountered a problem” “parseSdkContent Failed ”。原先设置的模拟器也不见了。我想了想原因,不清楚为什么,但是感觉跟我昨天连接手机有关系,一些原来的模拟设置变了。后来在网
2012-06-21 10:30:49
10677
转载 Android学习笔记2
android1.0+和2.0+取Phone的不同原来要读取系统联系人的信息只要如下代码即可实现Cursor people = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null); while(people.moveToNext()) {
2012-06-20 21:39:45
584
原创 Andriod学习笔记1
环境:Eclipse 3.3 + Andriod SDK 2.2Hello World Demo1.R.java中注册了所有用到的资源,每当加入新的资源在XML中后,重新编译工程就会自动在R中注册。2.每一个屏幕对应一个描述自己用到的UI的XML.在Layout下面。3.每一个工程用一个总的Manifest.XML来描述各个屏幕之间的跳转,描述用到的服务等。
2012-06-15 22:08:15
369
转载 unsigned char与char的区别
http://blog.youkuaiyun.com/zjl_1026_2001/article/details/3209158char 是有符号的 unsigned char 是无符号的,里面全是正数两者都作为字符用的话是没有区别的,但当整数用时有区别: char 整数范围为-128到127,而unsigned char 整数范围为0到255多数情况下,char ,signe
2012-06-14 14:40:32
739
原创 byte 和 octet有什么区别?
最近项目中写文档,由于跟老外合作,所有都是英文的。经常遇到octet这个词,我只是知道byte是一个由8 bits构成的字节,那么octet是什么呢?原来,不同计算机中字节的长度不同,为了不引起歧义,用octet专指8 bits构成的字节。
2012-01-09 21:34:11
25325
1
转载 林 锐《大学十年 —— 一个程序员的历程》值得成功和欲成功的朋友品读(转载)(下)
<br />1997年11月,在穷得快挨饿的时候,我获得了中国大学生跨世纪发展基金特等奖(全国共20名,奖金1万元),到人民大会堂领奖。给我们出钱的是一个靠资本运作发财的集团,在宴会前,该集团领导人和我们座谈,他什么不好吹偏偏吹自己是个高科技企业:“我们主要从事生物工程,几年前就掌握了克隆技术,英国的‘克隆羊’简直是小菜一碟。……我们在东北有个农场,新品种的小麦长得比人还高,麦粒跟葡萄一样大,你们不久都会喝到用这种小麦酿的啤酒。……我如果去美国炒个总统,那就跟玩似得。” <br /><br /> 我们几个
2010-12-26 16:46:00
1690
转载 林 锐《大学十年 —— 一个程序员的历程》值得成功和欲成功的朋友品读(转载)(上)
<br />林 锐《大学十年》<br /><br />【作者介绍】 linrui<br /><br /> 林锐,2000年获浙江大学计算机应用博士学位。大学期间两度被评为中国百名跨世纪优秀大学生,199/6年获电子工业部科技进步二等奖,1997年获首届中国大学生电脑大赛软件展示一等奖。2000年7月加入上海贝尔有限公司,从事软件工程和CMM/CMMI研究与推广工作,出版著作三部,2003年7月当选为Alcatel集团技术委员会会员。2004年创建上海漫索计算机科技有限公司.<br /><br /> 作者
2010-12-26 16:45:00
5387
转载 有了malloc/free为什么还要new/delete?
<br />来自: http://hi.baidu.com/sppeivan/blog/item/3041ca0e7c3d39206059f3ba.html<br />malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。<br /> 对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编
2010-10-06 11:32:00
392
转载 二叉树三种非递归遍历实现
二叉树三种非递归遍历实现 http://mcs.sysu.edu.cn/user/longt/Article_1781 | 浏览数(1022) | 评论数(0) | 2009-10-17<br /> 继续回顾基础<br />三种遍历的非递归实现<br />要点:利用栈,把握好进栈顺序,做好标记。<br />~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br />测试数据: A B X , X=0 时表示A.left = B
2010-09-25 22:53:00
443
转载 C++ socket程序
转自http://hereson.javaeye.com/blog/198771下面是一个C++调用windows API实现有通信程序,您可以据此进行修改,封装成类.// *******************************************************************// client.cpp : Defines the entry point for the console application.<br />// *************************
2010-09-25 13:34:00
555
转载 为什么说直到出现中断和通道技术后,多道程序概念才变为有用的?
<br />为什么说直到出现中断和通道技术后,多道程序概念才变为有用的?<br />转载自http://hi.baidu.com/litteice/blog/item/7fc9e9dcaebae7a1cc1166cb.html<br /> <br />采用多道程序设计减少了CPU时间的浪费,增加了系统吞吐量,提高了系统的效率。多道程序并发执行是指有的程序正在CPU上执行,而另一些程序正在I/O设备上进行传输,即通过CPU操作与外设传输在时间上的重叠减少CPU时间的浪费,并提高了系统的效率。实现CPU操作与外
2010-08-31 15:38:00
5126
4
原创 关于sizeof
<br />http://www.360doc.com/content/10/0124/00/722458_14261259.shtml<br />为了能使CPU对变量进行高效快速的访问,变量的起始地址应该具有某些特性,即所谓的“对齐”。例如对于4字节的int类型变量,其起始地址应位于4字节边界上,即起始地址能够被4整除。变量的对齐规则如下(32位系统):<br />Type<br />Alignment<br />char<br />在字节边界上对齐<br />short (16-bit)<br />在双
2010-08-31 15:37:00
402
转载 关于pragma pack的用法--------------C 中的内存对齐问题(转载)
<br />http://www.360doc.com/content/10/0124/00/722458_14261259.shtml<br />为了能使CPU对变量进行高效快速的访问,变量的起始地址应该具有某些特性,即所谓的“对齐”。例如对于4字节的int类型变量,其起始地址应位于4字节边界上,即起始地址能够被4整除。变量的对齐规则如下(32位系统):<br />Type<br />Alignment<br />char<br />在字节边界上对齐<br />short (16-bit)<br />在双
2010-08-28 21:28:00
364
原创 资料总结--关于static
因为静态变量时类中的全局变量,所以不应该放在头文件中,否则会重复定义。派生类与基类对象共享基类的静态数据成员。静态数据成员可以成为成员函数的可选参数:static int staticVar;void fool(int i=staticVar);静态数据成员的类型可以是所属的类的类型,但是普通数据成员不可以,普通成员只能声明为类的指针或者引用。静态数据成员在const成员函数中可以被改变。静态成员函数不能调用类的非静态成员,因为它不含this指针。静态成员函数不能同时声明为virtual,const,vol
2010-08-28 15:17:00
317
原创 运算符重载
运算符重载函数还可以为友元函数。当重载友元函数时,将没有隐含的参数this指针<br />。这样,对双目运算符,友元函数有2个参数,对单目运算符,友元函数有一个参数。但是<br />,有些运行符不能重载为友元函数,它们是:=,(),[]和->。 不能重载的运算符只有5个: <br />(1) 成员访问运算符.<br />(2) 作用域运算符∷<br />(3) 条件运算符?:<br />(4) 成员指针运算符*<br />(5) 编译预处理命令的开始符号#对双目运算符,重载为成员函数时,仅一个参数,另一个被
2010-08-26 21:41:00
328
原创 C++ primer 总结(sizeof,delete,new)
size_t是一种与机器相关的typedef定义;// ia = sizeof int; // 错误<br />ia = sizeof( int ); // ok<br />int *pi = new int[ 12 ];<br />cout << "pi: " << sizeof( pi )<br /><< " *pi: " << sizeof( *pi )<br /><< endl; 运行结果是pi:4 *pi:4,第一个因为是指针大小,所以是4,第二个我就有点不解,
2010-08-26 17:24:00
666
原创 面向对象的程序设计
const :只有被声明为const 的成员函数才能被一个const 类对象调用。构造函数和析构函数是两个例外即使构造函数和析构函数不是const 成员函数const类对象也可以调用它们。一个const 类对象从构造完成时刻到析构开始时刻这段时间内被认为是const。volatile:与const 类对象类似对于一个volatile 类对象只有volatile成员函数构造函数和析构函数可以被调用mutable :为了允许修改一个类的数据成员即使它是一个const 对象的数据成员我们也可以把该数据成员声明为m
2010-08-24 15:37:00
345
转载 01背包问题动态规划详解(转载)
转载自http://hi.baidu.com/%C5%DD%B0%C9%BA%C8%BE%C6/blog/item/667eb6ae038daecb7cd92ac4.html<br />动态规划是用空间换时间的一种方法的抽象。其关键是发现子问题和记录其结果。然后利用这些结果减轻运算量。<br />比如01背包问题。<br /> <br />因为背包最大容量M未知。所以,我们的程序要从1到M一个一个的试。比如,开始任选N件物品的一个。看对应M的背包,能不能放进去,如果能放进去,并且还有多的空间,则,多出来的空
2010-08-19 16:01:00
334
转载 01背包问题动态规划详解(转载)
转载自http://hi.baidu.com/%C5%DD%B0%C9%BA%C8%BE%C6/blog/item/667eb6ae038daecb7cd92ac4.html<br />动态规划是用空间换时间的一种方法的抽象。其关键是发现子问题和记录其结果。然后利用这些结果减轻运算量。<br />比如01背包问题。<br /> <br />因为背包最大容量M未知。所以,我们的程序要从1到M一个一个的试。比如,开始任选N件物品的一个。看对应M的背包,能不能放进去,如果能放进去,并且还有多的空间,则,多出来的空
2010-08-19 15:56:00
328
原创 Visio二次开发的环境搭建
当然要先安装Visio安装Visio SDK打开Visio,工具--ShapeStdio打开后,会看到数据库的配置,要求你选择数据源等等。我在这里折腾了很久,后来看MSDN,说如果你想连接SQL Server的数据库的话,那就要先运行SStudio.sql,这个sql位于D:/Program Files/Microsoft Office/Visio11/SDK/ShapeStudio,在SQl Server里面运行这个SQL文件,注意要选对数据库,在想要连接的数据库中运行,这样运行结果就保存在这个数据库中了
2010-07-14 16:35:00
2505
原创 关于排序的总结---这个总是考总是忘的东西
排序方法分类:内排序,外排序。按照方法分为:1)插入排序:包括直接插入排序和希尔排序;2)选择排序:直接选择排序和堆排序;3)交换排序:冒泡排序和快速排序;4)归并排序。稳定的排序方法:直接插入排序,冒泡排序,二路归并排序不稳定的:希尔排序,直接选择排序,堆排序,快速排序记录的移动次数:1)直接插入排序:最坏:n2/2,平均:n2/4; 2)直接选择排序的记录比较次数不受记录的初始排列的影响,共进行n-1次交换和选择平均时间复杂度:<br />
2010-07-13 21:31:00
443
原创 关于数据结构中的树--这个我总是学总是忘的东西
由二叉树的前序和中序遍历结果可以推出整个二叉树的结构;进而可以得到后序遍历的结果。类似的,由后序,中序可以推出二叉树结构。唯独由前序,后序不能推出中序。
2010-07-12 22:44:00
912
原创 散列函数
<br /> 1。散列函数的选取原则是:运算尽可能简单;函数的值域必须在散列表的范围内;尽可能使得结点均匀分布,也就是尽量让不同的关键码具有不同的散列函数值。需要考虑各种因素:关键码长度、散列表大小、关键码分布情况、记录的检索频率等等。<br /> <br />2。散列(HASH)函数H也称哈希函数或杂凑函数等,是典型的多到一的函数,其输入为一可变长x(可以足够的长),输出一固定长的串h(一般为128位、160位,比输入的串短),该串h被称为输入x的Hash值(或称消息摘要Message Dig
2010-07-12 22:15:00
2144
原创 求最小公倍数和最大公约数
1。求两个数的最大公约数算法:欧几里德算法(辗转相除法)。方法如下:先用小的一个数除大的一个数,得第一个余数;再用第一个余数除小的一个数,得第二个余数;又用第二个余数除第一个余数,得第三个余数;这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质数)。例如求1515和600的最大公约数,第一次:用600除1515,商2余315;第二次:用315除600,商1余285;第三次:用285除315,商1余30;第四次:用30除285
2010-07-12 16:31:00
1031
原创 算法:KMP算法实现的模式匹配
所谓的模式匹配就是给定两个字符串:一个是主串,一个是匹配串,要判断后者是不是前者的一个字串。必须连续。也就是说,判断,主串中是不是包含匹配串。比如:abcdfrdsadf和dsa,dsa就是前者的一个字串。 最容易想到的算法是一个指针指向主串,一个指针指向匹配串,比较所指向的元素,一旦不匹配,则指针回溯,将主串这个不匹配的字符再与匹配串中的字符一一比较。这样做的缺点是有很多不必要的重复的比较。比如0特殊情况0000000001000和1000,这个的复杂度很高。但是在一般情况下,这个算法效
2010-07-10 16:54:00
407
原创 算法:最长公共子序列
<br />1。最长公共子序列是求出两个字符串的公共序列,不要求连续,千万不要跟公共字串的概念弄混了。<br />2。算法中有一个用于存储公共子序列长度的数组,关于这个数组是如何计数的,我还没看懂,但是我调试运行了下,比如字符串1:“abcdef”,字符串2:“bcf”.算法是用两个for循环,使得第一个字符串的a分别于第二个字符串的各个字符进行比较,比较过程中若遇到与a相同的元素则计数。然后在用第一个字符串的b与第二个字符串的各个字符进行比较,......以此类推,直到循环终止。<br />3。当然,如果
2010-07-09 11:04:00
626
1
原创 C++学习笔记5---虚函数的工作原理
ps:编译器对虚方法使用动态联编,运行时根据对象决定调用父类还是子类的这个方法。虚函数的工作原理是:基类的对象维护一个虚函数表,所谓的维护,方式是用一个隐藏指针指向虚函数表。这个虚函数表中记录基类中定义的虚函数的函数地址。同样,派生类的对象也维护这样一个虚函数表。不同的是,1)如果派生类并没有重新实现基类的虚方法,则它的虚函数表记录的该函数地址还是维持基类中的不变;2)如果重新实现了,则记录新的函数地址。3)如果派生类还定义了自己的虚函数,则也要加到虚函数表里来。 调用虚函数时候,程序查看虚函数表
2010-07-06 21:48:00
671
原创 C++学习笔记4-----类的继承第二篇
1。公有继承中的多态公有继承:多态就是同一个方法有多种行为,多种实现,它的行为随上下文的不同而不同。比如父类中有一个方法func(),子类中又重新定义了一个func(),虽然名字一样,但是函数行为不一样。2。实现多态的方法有两种:1)在子类中重新定义;2)使用虚方法3。一开始我有点困惑,既然在子类中重新定义方法就可以实现多态,那为什么还要有虚方法的存在呢?1)这个例子假设父类没有定义虚方法-------fatherClass f("f",12,13);childClass c("c",112,113);fa
2010-07-06 16:03:00
351
原创 C++学习笔记4-----类的继承基础概念
1 类为什么要引入继承机制?简单地说,道理如同你继承一笔财产,总比让你白手起家容易很多。2 通过继承可以完成哪些事情?1。在已有类的基础上添加新功能2。添加新数据3。修改父类方法。3. 派生类不能直接访问基类的私有成员,必须通过基类的方法进行访问。4. 派生类需要有自己的构造函数。要明白下面的定义:1)声明基类:class fatherClass{public:fatherClass(const char *fn="none",const char *ln="none",bool ht);void Na
2010-07-05 09:49:00
684
1
原创 研究项目笔记
1.入口函数:AdminWeb:启动,停止web服务器RunService(argc,argv,NULL,SZSERVICEDISPLAYNAME,SZDEPENDENCIES);2.解析后的东西都去哪里了?缓存到什么数据结构了?
2010-06-23 11:53:00
368
原创 C++学习笔记3---类和动态内存分配
<br />1.类中的静态成员static的特点是:无论创建了多少对象,都只创建一个static变量的拷贝。所有对象共享一个static.<br />2.如果用new[]来分配内存,那一定要用delete []来释放内存;<br />3.释放对象可以释放对象本身占用的内存,但是滨河不能释放属于对象成员的指针指向的内存,所以必须使用析构函数;<br />4.同一个对象,构造一次,析构一次,二者的次数要相等
2010-06-22 17:31:00
597
2
原创 C++学习笔记2--使用类
1.如果一段代码中只是使用了std里的很少的一部分函数时,就可以不必在开头时候导入整个std,可以用例如std::cout2.参数声明为引用的目的是提高效率,比如Sum(Time &t),本来可以直接传值的,但引用效率高;3.操作符重载应该注意的有:(1)重载后的操作符必须有至少一个操作数是用户的自定义类型,这样的目的是防止对已经存在的标准运算,比如减法进行不恰当地重载,避免了减法失去了减法的本意;(2)不能自己定义一个操作符;(3)不能重载sizeof,.,*,?:,::等运算符.
2010-06-22 11:57:00
285
原创 C++学习笔记1--类和对象
1.类成员默认的是private,一般为了明确,把private显式地写上了;2.类与结构体作比较:struct成员默认的是public,结构体存储纯粹的数据类型,并且这些数据类型没有私有的特性;3.位于类定义里面的方法会自动成为inline。如果方法写在类的外面可以自己显式地声明为Inlie;内联函数可以被定义多次,而且必须在每次使用的时候都被定义。所以内联函数一般放在头文件。4.一个类的每个对象都有自己的存储空间,用来存储数据成员,但是这些实例共享类的方法,也就是说类的方法只有一个副本;5。一般情况下,
2010-06-22 10:19:00
426
1
原创 cerr
http://baike.baidu.com/view/2254717.htm?fr=ala0_1<br />cerr <br /><br /> cerr与cout的主要区分就是,cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。 例如下面程序编译后生成test.exe // test.cpp #include <iostream.h> int main() { cout << "hello world---cout" <<
2010-06-19 15:59:00
2132
原创 使用vector时报很多warning
<br /> <br /> <br />我大学学的是C语言,所以研究生阶段想自学C++,毕竟他们有那么多不同。但是在使用vector的时候报warning了————<br />Compiling...<br />TextSearch.cpp<br />f:/workspaceforc++/容器/textsearch.cpp(12) : warning C4786: 'std::reverse_iterator<std::basic_string<char,std::char_traits<cha
2010-06-19 10:07:00
966
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅