- 博客(114)
- 资源 (10)
- 收藏
- 关注
转载 socket编程
“一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。 ——有感于实际编程和开源项目研究。 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型
2013-12-23 14:46:17
242
转载 linux多线程编程
学东西,往往实例才是最让人感兴趣的,老是学基础理论,不动手,感觉没有成就感,呵呵。 下面先来一个实例。我们通过创建两个线程来实现对一个数的递加。 或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉。 下面是我们的代码: /*thread_example.c : c multiple thread programming in linux *au
2013-12-23 14:35:24
309
原创 Android之四 广播机制实现
广播机制实现 有时需要将数据广播给大家,这时需要应用广播机制原理。所谓Android广播与现实中广播有点相似,就是把消息传给所有人。如果自己需要这个广播消息的话,就接受处理。否则就不理睬。但是怎样才知道自己需不需要呢?为了实现这个,Android引入“动作”。如果广播者和接受者持有同样的动作的话,那么接受者将接受这个广播,并处理这个广播消息,这就是广播实现原理。 1、如
2013-06-08 10:32:04
2922
原创 总结之一 详细动态链接库编写过程
为了代码安全性,减少内存占有率等原因。这时需要将代码封装成dll链接库。接下来将详细介绍如何将代码封装成动态链接库。 1.例如将这个函数生成dll链接库。 int add(int a,int b){ return a+b; }2. 以vs2010开发工具为例。首先新建一个win32控制台项目DllDemo,应用类型选择"DLL",选择创建“空项目”,这样就完成一个DLL类型项目创建。
2013-06-04 15:31:21
501
原创 Android之二 onItemClick介绍
请教Android开发中的Adapter内的onItemClick监听器四个arg参数问题(多谢) public void onItemClick(AdapterView arg0, View view, int position, long arg3) 如上代码所述,请告诉我arg0到arg3分别代表什么,它们的作用是什么,请尽量让我明
2013-05-03 22:39:47
4740
原创 Android之三 Context机制
大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中 时刻的在与它打交道,例如:Service、BroadcastReceiver、Activity等都会利用到Context的相关方法 ; 说它陌生,完全是 因为我们真正的不懂Context的原理、类结构关系。一个简单的问题是,一个应用程序App中存在多少个
2013-04-24 14:00:24
348
原创 android之Handler,activity,service总结
1、Handler学习 由于有时要进行哪些耗时操作,如果这些操作放在主线程的话,容易导致程序假死,最后结果是系统崩溃。因此要进行某些耗时操作时,将其放在子线程进行,这样就涉及如何解决子线程与主线程之间通信问题(消息队列)。 Handler就是为了解决这个问题而存在的。当你处理某个耗时操作时,你将其放在子线程,子线程处理完后,将其结果放在消息队列中,然后主线程从消息队列中读取子线程处理结果,最后根据
2013-02-19 13:39:12
1439
原创 android Handler学习体会
由于有时某种处理比较耗时,如果这时放在主线程的话,容易造成程序假死,最后结果是整个程序崩溃。为了处理这种情况,一般讲这些耗时处理放在子线程处理,子线程处理完后,将结果放到消息队列中,然后在主线程再根据消息队列中结果更新主线程。 通常来说,有两种办法:
2013-02-18 19:35:04
93
转载 android Handler学习
Handler的使用(一) Handler基本概念: Handler主要用于异步消息的处理:当发出一个消息之后,首先进入一个消息队列,发送消息的函数即刻返回,而另外一个部分逐个的在消息队列中将消息取出,然后对消息进行出来,就是发送消息和接收消息不是同步的处理。 这种机制通常用来处理相对耗时比较长的操作。 使用一个例子简单的来介绍一下Handler。 示例1:一个应用程序中
2013-02-18 13:59:10
303
转载 android客户端与服务器端交互过程
1 //创建一个http客户端 2 HttpClient client=new DefaultHttpClient(); 3 //创建一个GET请求 4 HttpGet httpGet=newHttpGet("http://www.store.com/products"); 5 //向服务器发送请求并获取服务器返回的结果 6 HttpResponse r
2013-02-01 16:45:15
435
原创 android之一 入门学习
Android入门学习 1、项目文件基本框架 新建一个android项目之后,会自动生成几个文件。首先是src文件,这个文件主要存储.java文件,是代码主要部分。另外还有几个文件值得我们注意,其中一个就是res/layout。这个文件存储的是android项目要显示的界面。打开相应界面文件之后,不仅可以看到了界面的源码,还可以看到界面效果。现在android通过手动拉控件来完成界面设
2013-01-23 19:34:08
220
原创 1-----Android基于Monkey进行压力测试
monkey是android中自待的一个压力测试工具。 可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试 他的基本语法如下: monkey [options] 我们一般的用法: monkey -p com.cx.ad(package) -v 500,键入此命令可以看到手机模拟器上正在进行压力测试。 下面是一个网上的例子(已经验证过
2013-01-14 18:57:46
260
原创 基于Opencv的HSV调节算法
bool CMyImage::HSVAddS(IplImage *img, double dH, double dS, double dV) { bool bResult = false; int x, y; int nValue; float fValue; int nH, nS, nV; float fH, fS, fV;
2012-11-22 23:31:42
543
转载 面向对象三大基本特性,五大基本原则
透切理解面向对象三大基本特性是理解面向对象五大基本原则的基础. 三大特性是:封装,继承,多态 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。封装是面向对象的特征之一,是对象和类概念的主要特性。 简单的说,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。在一个对象内部,某些代码或某些数据可以是私有
2012-10-17 21:44:01
939
原创 算法总结
1、背包问题(01背包、完全背包、多重背包) 2、最小生成树(kruskal算法) 3、快速质数生成办法 4、最短距离和最长距离求法(dijkstra算法) 5、bfs遍历求法
2012-09-10 10:52:37
216
原创 BindService例子
package com.zhf.local; import android.app.Activity; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.Serv
2012-08-16 16:42:02
238
原创 android视频播放
视频播放比音频播放要复杂一些,除了音频之外,还需要考虑一个视觉组件。为了解决这一问题,Android提供了一个专门的视图控制器 android.widget.VideoView,封装了MediaPlayer的创建和初始化过程,这个小部件可以用在任何布局管理器中,而且它提供了很多显示选项,包括缩放和着色。要实现播放功能,我们要做的是,创建一个VideoView小部件并将其设置为用户界面的内容,然后设
2012-08-15 15:12:09
280
转载 WindowManager
写Android程序的时候一般用WindowManager就是去获得屏幕的宽和高,来布局一些小的东西。基本上没有怎么看他的其他的接口。 这两天想写一个简单的类似于Toast的东西,自定义布局,突然发现,原来Toast的时间是不能自己定义的,只有两个固定的时间,分别是2秒和3.5秒。我的需求是自定义显示的时间,这个显然不能满足我的需求。但是它是如何做到显示一个View凌驾于现有的所有的View
2012-08-14 16:18:43
380
转载 BroadcastReceiver应用详解
据说程序员是最爱学习的群体,IT男都知道,这个行业日新月异,必须不断地学习新知识,不断地为自己注入新鲜的血液,才能使自己跟上技术的步伐。 今天我们来讲一下Android中BroadcastReceiver的相关知识。 BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播。 在Android系统中,广播体现在方方面面,例如
2012-08-07 15:57:50
208
转载 android播放器
1.Mp3Player.java 文件 package com.jacky.multimedia; import java.io.File; import java.io.FilenameFilter; import java.io.IOException; import java.util.ArrayList; import java.util.List;
2012-08-06 16:43:31
262
转载 Java调用XML的方法:DocumentBuilderFactory
首先得到:得到 DOM 解析器的工厂实例 DocumentBuilderFactory domfac=DocumentBuilderFactory.newInstance(); 然后从 DOM 工厂获得 DOM 解析器 DocumentBuilder dombuilder=domfac.newDocumentBuilder(); 3 )把要解析的 XML 文
2012-08-03 11:07:11
171
转载 Android的Handler总结
一、Handler的定义: 主要接受子线程发送的数据, 并用此数据配合主线程更新UI. 解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, 你要是点击一个 Button ,Android会分发事件到Button上,来响应你的操作。 如果此时需要
2012-08-03 10:37:04
230
转载 LayoutInflater.from(this)的用法
通俗的说,inflate就相当于将一个xml中定义的布局找出来. 因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组件. 因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话框上的layout里的组件(像图片ImageView,文字TextView)上的内容
2012-07-31 09:13:46
2767
转载 谷歌Android开发常见错误及技巧
1、无法使用网络 :Permission denied(maybe missing internet permission) 在AndroidMainifest.xml中增加允许使用网络选项(在结束标签之后>): 2、找不到activity类: android.content.ActivityNotFoundException: Unable to find
2012-07-30 10:04:45
2512
原创 图像渲染
#include "stdafx.h" #include #include #include #include #include #include #include #include #ifdef WIN32 #pragma comment(lib, "SDL.lib") #pragma comment(lib, "SDLmain.lib") #pr
2012-05-22 10:30:04
263
原创 c++ 接口 抽象类 区别
c++中没有接口的概念,与之对应的是纯虚类,即只含有纯虚函数的类,c++抽象类的概念是含有纯虚函数成员的类。这是因为c++提供多继承,而像java、c#这些只提供单继承(避免多继承的复杂性和低效性)的语言为了模拟多继承功能就提供了接口概念,接口可以继承多个。 abstract class是抽象类,至少包含一个纯虚函数的类就叫做抽象类。 但是如果一个类,所有的成员
2012-05-03 19:03:57
407
原创 IplImage结构容易出错
OpenCV里IplImage数据结构极易出错的问题 对OpenCV稍有了解的同学都知道里边用于存储图像数据的IplImage,其中有两个属性非常值得关注,稍不留神就会导致错误(后附错例一则): 一是width属性;二是widthStep属性。 前者是表示图像的每行像素数,后者指表示存储一行像素需要的字节数。 在OpenCV里边,widthStep必须是4的倍数,从而实现字节对齐,有利于提
2012-04-29 11:33:12
275
原创 VC中使用全局变量的2种办法及防错措施
VC中使用全局变量的2种办法及防错措施 1. 对于全局变量存在和函数一样的问题,为了在其他CPP文件中能够访问这些变量,必须在主文件的H文件中加上extern声明,格式如下: extern varibletype var; (声明) 在主文件的CPP文件中定义 varibletype var; (定义) 例子: AppWizard建立一个Test工程 那么
2012-04-16 15:31:51
255
原创 自己写的字符串函数
#include using namespace std; #define N 50 //将字符串src复制到desti void myStrcpy(char *desti,char *src) { while (*src) { *(desti++) = *(src++); } *desti = '\0'; } //比较字符串大小 int myStrcmp(char *str
2012-04-11 23:47:35
325
转载 window下内存管理
WIndows为每个进程分配了4GB的虚拟地址空间,让每个进程都认为自己拥有4GB的内存空间,4GB怎么来的? 32位 CPU可以取地址的空间为2的32次方,就是4GB(正如16位CPU有20根寻址线所有拥有2的20次方的寻址空间一样) 当我们在Windows中双击一个应用程序图标后,系统为该应用程序创建一个进程,Windows使得每个进程都拥有2GB的地址空间,这2GB地址空间用于程序存放
2012-04-06 21:23:22
1538
原创 opencv中直方图
直方图 CvHistogram 多维直方图 typedef struct CvHistogram { int header_size; CvHistType type; int flags; int c_dims; int dims[CV_H
2012-03-25 11:10:21
952
原创 c语言字符串函数
函数名: strcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char *source); 程序例: #include #include int main(void) { char string[10]; char *str1 = "abcdefghi"; stpcpy(s
2012-03-14 21:44:12
195
原创 sicily------简单二分查找和排序
最近写了一道关于字符串查找问题,问题是:给你一序列字符串,然后再给出另外一序列字符串,在第一个序列中找出多少个字符串在第二个序列中没有出现过,忽略字符大小写。 例如: 第一个序列: Inkfish Henry Carp Max Jericho 第二个序列: Carp Max Carp 结果:3 这个问题解题首先是:1)首先对第一序列全部转换成小写,然后对第一个
2012-02-27 14:52:33
280
原创 sicily------string用法介绍
最近老是要用到字符串的函数,有些函数自己早就忘光了,先总结下string用法,免得以后又不记得。 a) =,assign() //赋以新值 b) swap() //交换两个字符串的内容 c) +=,append(),push_back() //在尾部添加字符 d) insert() //插入字符 比如:s.insert(0,1,'c')在字符串开头插入c字符,0表示开头,1表示长度,
2012-02-25 21:00:12
295
原创 sicily------给前序遍历和后序遍历,求多少个二叉树满足
Description 在众多的数据结构中,二叉树是一种特殊而重要的结构,有着广泛的应用。二叉树或者是一个结点,或者有且仅有一个结点为二叉树的根,其余结点被分成两个互不相交的子集,一个作为左子集,另一个作为右子集,每个子集又是一个二叉树。 遍历一棵二叉树就是按某条搜索路径巡访其中每个结点,使得每个结点均被访问一次,而且仅被访问一次。最常使用的有三种遍历的方式: 1.前序遍历:若二叉树为空
2012-02-25 20:45:09
1065
原创 数据结构总结
数据结构估计都忘得差不多了,现在还有点时间,就总结下。 1--------stack: ---》栈最大特点是先进后出,可以直接调用STL中stack,其掉用形式如下: #include//需要引入头文件 stacks //定义一个整形的栈; s.push(4);//向栈顶插入一个元素 s.pop();//从栈顶弹出一个元素 s.empty();判断栈是否为空,如果为空返回true,否
2012-02-24 22:00:19
277
原创 数据结构总结
数据结构估计都忘得差不多了,现在还有点时间,就总结下。 1--------stack: ---》栈最大特点是先进后出,可以直接调用STL中stack,其掉用形式如下: #include//需要引入头文件 stacks //定义一个整形的栈; s.push(4);//向栈顶插入一个元素 s.pop();//从栈顶弹出一个元素 s.empty();判断栈是否为空,如果为空返回true,否
2012-02-24 21:59:27
134
原创 数据结构总结
数据结构估计都忘得差不多了,现在还有点时间,就总结下。 1--------stack: ---》栈最大特点是先进后出,可以直接调用STL中stack,其掉用形式如下: #include//需要引入头文件 stacks //定义一个整形的栈; s.push(4);//向栈顶插入一个元素 s.pop();//从栈顶弹出一个元素 s.empty();判断栈是否为空,如果为空返回true,否
2012-02-24 20:13:14
77
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人