- 博客(85)
- 资源 (2)
- 收藏
- 关注
原创 pion初识
初衷 pion的初衷不是提供一个完整的web server框架,而是为现有的c++程序提供基本的HTTP服务。如果你只是想把你的c++程序部署到web上并提供一个简单的用户接口或者与实时的数据打交道,那么pion是一个很好的选择。特点 pion是一个轻量级的http server框架,使用Boost和ASIO来实现多线程和异步IO,能够允许多个server监听任意
2012-12-29 08:36:13
3777
原创 关于sizeof
在gcc4.7下有如下代码#include#include #include using namespace std;struct ttp{ int a; char b; int c; char d;};int main(int argc, char* argv[]){ char array[] = "rteeeer"; string a = "rteeee
2012-11-21 14:34:48
736
转载 C/C++ 语言中的表达式求值
转自csdn论坛上http://bbs.youkuaiyun.com/topics/370153775经常可以在一些讨论组里看到下面的提问:“谁知道下面C语句给n赋什么值?”m = 1; n = m+++m++;最近有位不相识的朋友发email给我,问为什么在某个C++系统里,下面表达式打印出两个4,而不是4和5:a = 4; cout C++ 不是规定 要弄清这些,需要理解的一个问题
2012-11-15 10:22:23
1136
原创 Linux下获取命令源码
Linux下有时候对某一个命令的源码感兴趣了,这时候怎么办呢?下面介绍一种方法 ,以ping为例:这是系统信息:[root@Kevin kevin]# uname -aLinux Kevin 3.3.4-5.fc17.i686 #1 SMP Mon May 7 17:45:26 UTC 2012 i686 i686 i386 GNU/Linux首先需要看看ping命令属于哪个包
2012-06-30 21:56:23
1306
1
转载 c++: size_type与 size_t一些概念
size_type: 由string类类型和vector类类型定义的类型,用以保存任意string对象或vector对象的长度,标准库类型将size_type定义为unsigned类型 string抽象意义是字符串, size()的抽象意义是字符串的尺寸, string::size_type抽象意义是尺寸单位类型 string::size_type它在不同的机器
2012-06-13 22:02:48
845
原创 TCP/IP详解(六)ICMP:Internet控制报文协议
I C M P经常被认为是 I P层的一个组成部分。它传递差错报文以及其他需要注意的信息。I C M P报文通常被 I P层或更高层协议( T C P或U D P)使用。一些 I C M P报文把差错报文返回给用户进程。一、ICMP报文格式类型:所有报文的前4个字节都是一样的,类型字段可以有 1 5个不同的值,以描述特定类型的 I C M P报文。某些 I C M P报文还
2012-06-07 16:19:32
1735
原创 TCP/IP详解(四、五)ARP与RARP
ARP:地址解析协议 RARP:逆地址解析协议 这两个协议都是链路层协议(图1-4) 当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据 48 bit的以太网地址来确定目的接口的。设备驱动程序从不检查 IP数据报中的目的 IP地址。一、ARP分组格式 以太网报头中的前两个字段是以太网的
2012-06-05 15:03:42
1568
原创 TCP/IP详解(三)IP:网际协议
IP提供不可靠、无连接的服务。所有的T C P、U D P、I C M P及I G M P数据都以I P数据报格式传输(网络概述里有图示)。 不可靠(u n r e l i a b l e)的意思是它不能保证I P数据报能成功地到达目的地。I P仅提供最好的传输服务。如果发生某种错误时,如某个路由器暂时用完了缓冲区,I P有一个简单的错误处理算法:丢弃该数据报,然后发送I C
2012-05-28 20:49:09
1000
原创 TCP/IP详解(二)链路层
注:以后文章中颜色内容为不必注意,颜色内容为特别注意。一、概述 在T C P / I P协议族中,链路层主要有三个目的:(1)为I P模块发送和接收I P数据报;(2)为A R P模块发送A R P请求和接收A R P应答;(3)为R A R P发送R A R P请求和接收R A R P应答。T C P / I P支持多种不同的链路层协议,这取决于网络所使用的硬件,如以太
2012-05-25 21:12:37
1077
原创 TCP/IP详解(一)网络概述
一、TCP/IP协议簇层次结构 应用层和运输层使用端到端( End-to-end)协议。只有端系统需要这两层协议。但是,网络层提供的却是逐跳( Ho p - b y - h o p)协议,两个端系统和每个中间系统都要使用它。 在T C P / I P协议族中,网络层 I P提供的是一种不可靠的服务。也就是说,它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可
2012-05-10 10:15:10
1351
原创 编程实用命令和工具
1.在linux下经常要对比两个文件在内容上有哪里不一样,可以用vim的deffsplit解决,具体如下:问题:有文件a.tmp和b.tmp,对比两文件内容上有哪些地方不一样.解决:1).在vim打开a.tmpvim a.tmp2).在vim中输入:vert diffsplit b.tmp简单方法:直接在shell下vimdiff a
2012-04-15 21:13:23
692
原创 关于免费代理
觉得有2个免费代理很好用:1、sixxs.org这是一个IPV6的代理,校园网使用起来很爽使用方法:在要前往的网址后加上.sixxs.org如:git-scm.com -------〉 git-scm.com.sixxs.org2、http://schoolbreakout.com/这个代理的优点在于是IPv4的,支持https使用方法:直接进
2012-01-04 21:23:08
1198
转载 eclipse调试技巧
F8-------运行到下一断点处F5-------STEP INTOF6-------STEP OVER ***********************************************************************Eclipse Java常用快捷键(Eclipse Shortcut Keys for Java Top10)
2011-12-08 22:25:46
931
原创 Java中String,StringBuffer,StringBuilder区别
String类用来表示那些创建后就不会再改变的字符串,它是immutable的。StringBuffer类用来表示内容可变的字符串,并提供了修改底层字符串的方法。可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方法调用顺序一致。当我们进行字符拼接时,请使用StringBuffer类而非Str
2011-11-24 11:31:29
635
原创 win7下Mysql5.5设置成utf8,但还是不能插入中文
我的mysql在安装时设置的字符集是utf8,但是插入中文字段时还是会报错ERROR:1366(HY000)Incorrect string valueC:\Program Files\MySQL\MySQL Server 5.5\my.ini如下# MySQL Server Instance Configuration File# ---------------------------
2011-11-17 21:21:12
3046
1
转载 poj 1131进制转换
//POJ 1131 Octal Fractions 任意进制之间小数的转换//给定一个八进制的小数题目要求你把它转换为十进制小数,//转换后小数的位数是转换前八进制小数位数的3倍且不输出末尾无意义的零(即后置零). // 我采用的方法是乘10然后对8取整(现在假设将p进制的小数转换为n进制,同样采用乘n取整:),//每转换一位,都必须从最低位s[len-1]开始至小数的最高位(即小数
2011-11-09 19:49:47
988
原创 python3+PAM30,刷新小工具
闲着无聊,写了个刷新的小工具,原本是用来替室友刷帖用的,后来发现那个论坛原来不是完全按照访问量来推荐帖子的,然后就悲剧了。#! /usr/bin/env python#coding=utf-8import urllib.requestimport timeimport randomfrom PAM30 import PAMIEie = PAMIE()ie.navigate(
2011-11-06 20:52:01
2665
原创 win7 + vs2010下opengl开发环境
glut下载地址:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip 1. 把解压得到的glut.h放到"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl"(与具体安装位置有关,应该是 安装目录\microsoft sdks\win
2011-11-06 10:58:38
2583
转载 如何使用Dev C++调试(debug)c程序
方法1:(已验证)在“工具”-》编译选项-》"Add following commands when calling complier"下面的编辑框里加上: -g3然后在下面的"Add these commands to the linker command line" 下的编辑框上加上: -g3转到programs页,把gcc行修改为:gcc.exe -D__DEBUG__,
2011-11-06 10:00:27
7211
转载 Windows7下IPV6设置方法详解
Windows 7下配置IPV6的方法和Vista基本类似,需要注意的是,鉴于各个校园或其他场所的网络配置环境不同,如果按如下方法配置不成功可以进一步咨询相关网络管理人员,或重新选择连网客户端 :)下面来看具体的两个设置方法吧!步骤/方法方法一、手动简易设置 1、点击通知区网络连接图标,点击“打开网络和共享中心”(Open Network and Sharing Cen
2011-11-02 18:05:15
1965
原创 mysql改成sqlserver产生的问题
在博物馆展示系统中,服务器开始使用的是Java + tomcat + mysql,由于交给了另外一个同学开发,所以改成了Java + tomcat + sqlserver。在建表时采用的是create table test(id char(5) primary key,path char(20))在mysql和sqlserver产生的区别是:当程序取出path时,mysql会自动去掉后
2011-10-28 16:52:30
1129
原创 android Uri使用
1.Uri通用资源标志符(Universal Resource Identifier, 简称"URI")。Uri代表要操作的数据,Android上可用的每种资源 - 图像、视频片段等都可以用Uri来表示。 URI一般由三部分组成:访问资源的命名机制。 存放资源的主机名。 资源自身的名称,由路径表示。 Android的Uri由以下三部分组成:
2011-10-28 16:38:59
22397
原创 Eclipse 项目有红感叹号、小红叉
红感叹号:问题原因】:工程中classpath中指向的包路径错误【解决办法】:右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项卡找到 Libraries中出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径。然后回到eclipse中F5刷新工程。 下面两段为我解决此问题时在网上找的参考资料,可
2011-10-28 15:11:00
4883
转载 android模拟器快捷键(对使用模拟器开发很有用)
Android SDK2.0.1自带的虚拟机尺寸都比较小(不针对机型,只为了在PC上看的舒服一点,当然越大越好了,我最大设置成1050*450,但是自带的屏保会不够宽,900*450的话,正好。),而且没有横屏的。设置Resolution可以把尺寸变大,但又显示不出键盘来(至今未解决),所以在网上搜集了一下模拟器的快捷键备忘,模拟器不显示键盘也可以用!Home键(小房子键)在键盘上映射的就
2011-10-26 16:07:37
845
转载 android横竖屏切换、键盘推出状态改变的处理
背景介绍:在编写android小应用的时候,碰到了这样的一个问题:当推开手机的实体键盘时,屏幕由竖屏转换为横屏,此时应用程序的显示界面(Activity)就会被销毁了,这个让人比较郁闷。如何才能让这个activity不被销毁呢?------------------------------------- 背景分割线 ------------------------------------
2011-10-26 15:38:02
1270
转载 C++ 用new 动态创建多维数组
我们知道char *a=new char[10];可以创建一个长度为10的数组。当把定值10换为一个变量时,我们的程序也没有任何问题,这时可成了名副其实的动态创建数组,如:int n=10;char *a=new char[n];但我们怎么动态创建一个多维数组呢?一定有人写出来这样的代码://错误代码char **a=new char[10][10];但是在VC6下
2011-10-24 22:50:36
775
原创 SSH学习笔记(三)
三、项目拓展下面在前面的小项目中添加一个小功能,动态生成execl文件及下载,要用到apache的POI组件,这个包默认已经被spring加载1、在UserService.java中添加方法public InputStream getInputStream();在
2011-08-24 22:10:50
871
原创 SSH学习笔记(二)
二、小项目实践项目描述:对一个用户的姓、名、年龄进行增删查改,使用ssh框架 + apache的dbcp连接池。 1、确认commons-dbcp.jar已被导入(按照上篇的操作,则会被导入)2、使用mysql数据库,建立名为mytest的数据库,创建表users
2011-08-15 21:31:05
980
转载 设计模式之(二十一)访问者模式Visitor
在Java中所有的物件都继承自Object物件,这样作的优点之一,就是使得一些集合物件的资料结构容易管理,例如您可以将任何型态的物件放入Vector中。然而现在有个问题是,如果您的集合(connection)物件中不仅储存一种型态的物件,如果想要对这些物件作出一些个别化的
2011-08-10 09:48:22
539
原创 SSH学习笔记(一)
开发环境:1、MyEclipse 6.5 2、Tomcat 6.0 3、Struts2.0 + Hibernate3.2 + Spring2.0一、操作实例1、创建项目。在MyEclips
2011-08-09 22:09:59
880
转载 设计模式之(二十)解释器模式Interpreter
对于一个具有层次节点关系的问题来说,如果您要剖析每一个节点,您可以使用Interpreter模式,直译器模式有些类似演算法中的个别击破方式,对每一个父节点我们剖析出其子节点组合,然而交给子节点剖析物件继续剖析,直到剖析至终端节点为止。举个例子来说明好了,先说明的是,这个例
2011-08-09 16:56:44
940
转载 设计模式之(十九)中介者模式Mediator
Mediator中介者模式定义:用一个中介对象来封装一系列关于对象交互行为.为何使用Mediator?各个对象之间的交互操作非常多;每个对象的行为操作都依赖彼此对方,修改一个对象的行为,同时会涉及到修改很多其他对象的行为,如果使用Mediator模式,可以使各个对象间
2011-08-09 16:36:58
666
转载 设计模式之(十八)策略模式Strategy
Strategy策略模式是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类.Stratrgy应用比较广泛,比如, 公司经营业务变化图, 可能有两种实现方式,一个是线条曲线,一个是框图(bar),这是两种算法,可以使用Strategy实现.
2011-08-09 16:29:32
512
转载 设计模式之(十七)状态模式State
由简单的开始会比较好理解状态模式的作用,先来看一个例子,如果您有一个只能顺时针转动的瓦斯开关,转动一次的状态为off、 small fire、medium fire与large fire,您如何在程式中控制状态的变化与行为呢?一个最简单的方式就是用if..else或是switch
2011-08-09 15:53:16
486
转载 设计模式之(十六)命令模式Command
Command模式是最让我疑惑的一个模式,我在阅读了很多代码后,才感觉隐约掌握其大概原理,我认为理解设计模式最主要是掌握起原理构造,这样才对自己实际编程有指导作用.Command模式实际上不是个很具体,规定很多的模式,正是这个灵活性,让人有些confuse.Command定义
2011-08-08 15:20:48
540
转载 设计模式之(十五)职责链Chain of Responsibility
Chain of Responsibility定义Chain of Responsibility(CoR) 是用一系列类(classes)试图处理一个请求request,这些类之间是一个松散的耦合,唯一共同点是在他们之间传递request. 也就是说,来了一个请求,A类先处理
2011-08-08 14:29:59
395
转载 设计模式之(十四)观察者模式Observer
Java深入到一定程度,就不可避免的碰到设计模式(design pattern)这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循一定的编程模式,才能使自己的代码便于理解,易于交流,Observer(观察者)模
2011-08-08 10:47:12
496
转载 设计模式之(十三)备忘机制Memento
Memento备望录模式定义:memento是一个保存另外一个对象内部状态拷贝的对象.这样以后就可以将该对象恢复到原先保存的状态.Memento模式相对也比较好理解,我们看下列代码:public class Originator { publi
2011-08-08 10:35:55
464
转载 设计模式之(十二)模板模式Template
Template模板模式定义:定义一个操作中算法的骨架,将一些步骤的执行延迟到其子类中.使用Java的抽象类时,就经常会使用到Template模式,因此Template模式使用很普遍.而且很容易理解和使用。 public abstract class
2011-08-08 10:27:52
485
转载 设计模式之(十一)享元模式Flyweight
Flyweight模式定义:避免大量拥有相同内容的小类的开销(如耗费内存),使大家共享一个类(元类).为什么使用?面向对象语言的原则就是一切都是对象,但是如果真正使用起来,有时对象数可能显得很庞大,比如,字处理软件,如果以每个文字都作为一个对象,几千个字,对象数就是几
2011-08-08 09:36:56
330
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人