文档
文章平均质量分 92
Posix
这个作者很懒,什么都没留下…
展开
-
explicit构造函数
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”);转载 2014-02-11 16:35:16 · 504 阅读 · 0 评论 -
SVN 主干(trunk)、分支(branch )、标记(tag)
主干(trunk)、分支(branch )、标记(tag)在SVN中Branch/tag在一个功能选项中,在使用中也往往产生混淆。 在实现上,branch和tag,对于svn都是使用copy实现的,所以他们在默认的权限上和一般的目录没有区别。至于何时用tag,何时用branch,完全由人主观的根据规范和需要来选择,而不是强制的(比如cvs)。一般情况下, trunk:是转载 2014-02-11 14:07:28 · 587 阅读 · 0 评论 -
HTTP协议详解
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HT转载 2013-06-17 12:00:59 · 502 阅读 · 0 评论 -
multimap查询重复键值
typedef std::multimap Pairs;Pairs pairs;pairs.insert(make_pair(1, 1));pairs.insert(make_pair(1,2));pairs.insert(make_pair(1,3));pairs.insert(make_pair(2, 4));pairs.insert(make_pair(2,5));转载 2013-06-17 11:06:35 · 1467 阅读 · 0 评论 -
Linux与Windows中map类erase方法的差异
1 #include iostream> 2 #include map> 3 #include string> 4 5 using namespace std; 6 7 int main(int argc, char* argv[]) 8 { 9 mapstring, int> MyMap;10 11 MyMap["bujiwu"] =转载 2013-06-13 10:18:22 · 561 阅读 · 0 评论 -
CTime以及其它时间差CTimeSpan
CTime以及其它时间差2008-10-17 23:04一、DateTimePicker控件引用一个DateTimePicker控件,关联变量m_date为DateTimeCtrl类型,然后在响应事件中加入如下代码: CTime tm; m_date.GetTime(tm); CString strDate=tm.Format("%Y-%m-转载 2013-06-11 21:50:48 · 1634 阅读 · 0 评论 -
链表各类操作详解
链表概述 链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个部分:一为用户需要用的实际数据,二为下一个结点的地址。因此,head指向第一个元素:第一个元素又指向第二个元素;……,直到最后一个元素,该元素不再指向其它元素,转载 2013-06-01 08:11:40 · 445 阅读 · 0 评论 -
关于MFC的多线程类 CSemaphore,CMutex,CCriticalSection,CEvent
---------------------------------------------------线程----------------------------------------------------CreateThread(NULL,0,(LPTHREAD_START_ROUTINE) listen,NULL,0,&IDThread);参数1 : 按MSDN上的说法,为空时ha转载 2013-05-31 16:41:21 · 972 阅读 · 0 评论 -
EmptyWorkingSet和内存整理
网络上找了很多关于内存整理的文章,不外乎都是使用EmptyWorkingSet来实现。就如下面这段代码。#include "stdafx.h"#include #include #include #pragma comment (lib,"psapi.lib")BOOL EmptyAllSet(){ HANDLE SnapShot=CreateTool转载 2014-04-02 15:38:59 · 6624 阅读 · 0 评论 -
项目管理的十大原则
1、工欲善其事,必先利其器;理解:项目管理必须先把优质资源集中协调到位 2、名不正则言不顺,言不顺则事不成;理解:项目管理需要进行组织规划,职责分配,做到各伺其职,人尽其用 3、其身正,不令而行;理解:项目管理需要项目经理以身作则,各实施成员要爱岗敬业,以取得广大用户的信任,顺利推动项目进展 4、凡事预则立,不预则废;理解:项目管理需要计划,虽然计划赶不上变化,但是计划必须跟得上变化,转载 2014-04-21 09:44:32 · 695 阅读 · 0 评论 -
让程序在崩溃时体面的退出之Dump文件
在我的那篇《让程序在崩溃时体面的退出之CallStack》中提供了一个在程序崩溃时得到CallStack的方法。可是要想得到CallStack,必须有pdb文件的支持。但是一般情况下,发布出去的程序都是Release版本的,都不会附带pdb文件。那么我们怎么能在程序崩溃的时候找到出错的具体位置呢?这个时候就该Dump文件出场了!Dump文件是进程的内存镜像,可以把程序运行时的状态完整的保存下来。转载 2014-05-09 15:08:36 · 563 阅读 · 0 评论 -
Linux进程关于文件描述符的数量限制
Linux进程关于文件描述符的数量限制转载 2014-11-21 14:51:34 · 1558 阅读 · 0 评论 -
Linux netstat命令详解
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections (w/o servers)Proto Re转载 2014-11-21 11:45:25 · 499 阅读 · 0 评论 -
C#/C++ 中字节数组与int类型转换
1.C#中int和byte[]转换:/// /// 把int32类型的数据转存到4个字节的byte数组中/// /// int32类型的数据/// 4个字节大小的byte数组public static bool ConvertIntToByteArray(Int32 m, ref byte[] arry){ if (arry == null) return fals转载 2014-09-25 16:05:16 · 1405 阅读 · 0 评论 -
IIS不能下载无扩展名文件解决方法
添加全局 MIME 类型 在 IIS 管理器中,展开本地计算机,右键单击要向其添加 MIME 类型的计算机,单击“属性”。 单击“MIME 类型”选项卡。 单击“新建”。 在“扩展名”框中,键入文件扩展名。 在“MIME 类型”框中,键入与客户端计算机上所定义的文件类型完全匹配的说明。 注意 还可以为无扩展名或未定义 MIME 类型的文件创建 MIME 类型。要完成此操作,转载 2014-09-24 11:32:07 · 5255 阅读 · 0 评论 -
UDP与TCP的MTU值
UDP和TCP协议利用端口号实现多项应用同时发送和接收数据。数据通过源端口发送出去,通过目标端口接收。有的网络应用只能使用预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP和TCP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535。动态端口的范围是从1024到65535。 MTU最大传输单元,这个最大传输单元实际上和链路层协议有转载 2014-09-23 13:57:44 · 974 阅读 · 0 评论 -
VS2010 LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 的解决方法
用VS2010编译C++项目时出现这样的错误:LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 解决方法:1、搜索C盘下的cvtres.exe,结果得到类似这样的列表:C:\Program Files\Microsoft Visual Studio 10.0\VC\binC:\Windows\winsxs\x86_netfx-cvtres_for_转载 2014-06-20 22:23:08 · 646 阅读 · 0 评论 -
让程序在崩溃时体面的退出之终极解决方案(SEH+Dump+Unhandled Exception Filter)
在我的上篇文章《让程序在崩溃时体面的退出之SEH+Dump文件》我介绍了怎样用SEH加上Dump文件来避免程序的崩溃并在程序崩溃时创建Dump文件来帮助定位出现异常的代码行。可是只有try/except块中try块中的代码出现异常才能被捕捉到,try块外面的代码出现异常,程序照样会崩溃。 下面用《让程序在崩溃时体面的退出之SEH+Dump文件》文中的代码为例子来说明。转载 2014-05-13 16:15:35 · 487 阅读 · 0 评论 -
CreateThread、_beginthreadex、AfxBeginThread
CreateThread、_beginthreadex、AfxBeginThread 1、CreateThread、_beginthreadex、AfxBeginThread的区别和正确使用:CreateThread是一个Windows 的API函数,_beginthreadex是一个微软VC中C运行时库中的线程创建函数,A转载 2014-05-19 10:25:08 · 592 阅读 · 0 评论 -
C语言多线程编程(windows下)【用pthread】
http://jefry.iteye.com/blog/1102692运行之前需要做一些配置: 1.下载PTHREAD的WINDOWS开发包 pthreads-w32-2-4-0-release.exe(任何一个版本均可) http://sourceware.org/pthreads-win32/ ,解压到一个目录。 2.找到include和lib文件夹,下面分别把它们添加到转载 2013-05-31 16:42:19 · 1558 阅读 · 0 评论 -
VC中RichEdit 控件的使用
在mfc中使用工具栏里的RichEdit 控件时,应该在程序初始话时加入AfxInitRichEdit,或者 AfxInitRichEdit2 否则的话 程序会起不来.也没有任何错误信息.这俩函数 是加载 Riched20.dll(Riched32.dll )的.1.设置edit只读属性 方法一: m_edit1.SetR转载 2013-05-31 15:10:36 · 1867 阅读 · 0 评论 -
STL容器介绍
STL的容器可以分为以下几个大类: 一:序列容器, 有vector, list, deque, string.二 : 关联容器, 有set, multiset, map, mulmap, hash_set, hash_map, hash_multiset, hash_multimap三: 其他的杂项: stack, queue, valarray, bitsetSTL各个容器的转载 2013-04-04 20:04:19 · 423 阅读 · 0 评论 -
C++ STL List队列用法(实例)
#include #include #include #include using namespace std;//创建一个list容器的实例LISTINTtypedef list LISTINT;//创建一个list容器的实例LISTCHARtypedef list LISTCHAR;void main(void){//----------------转载 2013-04-04 20:58:21 · 671 阅读 · 0 评论 -
get,post数据长度的限制 2 GET与POST方法的区别
get,post数据长度的限制这个问题在我的开发中也遇到,所以在此贴出来(也是在网上搜出来的,呵呵)这是原贴地址http://blog.csdn.net/somat/archive/2004/10/29/158707.aspx两个长度限制问题的分析(来源于项目) 一、问题起因在某项目释放后Bug统计的附件《释放后问题》里有: 问题 原因 分析 备注 CSV处理时,如转载 2013-03-12 14:03:01 · 664 阅读 · 0 评论 -
Raw Socket和Socket编程
1.原始套接字(raw socket)1.1 原始套接字工作原理与规则原始套接字是一个特殊的套接字类型,它的创建方式跟TCP/UDP创建方法几乎是一摸一样,例如,通过CODE:[Copy to clipboard]int sockfd;sockfd = socktet(AF_INET, SOCK_RAW, IPPROTO_ICMP);这两句程转载 2013-03-08 18:41:34 · 1677 阅读 · 0 评论 -
C++内存管理
[导语]内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃C++,转到Java或者.NET,他们的内存管理基本是自动的,当然你也放弃了自由和对内存转载 2013-03-06 14:04:45 · 717 阅读 · 0 评论 -
WINDOWS7 配置驱动开发环境(wdk7.60)
1. 安装VS2010,WDK7.60(GRMWDK_EN_7600_1)2. 新建VC 控制台项目(选择为空项目)3. 新建项目配置“driver” ,点击下拉按钮-点击(配置管理器)输入名称(driver)点击确定就可以了,其他的不要动哦!完成后的效果!点击确定按钮之后呈现出来的画面鼠标右击新建的dr转载 2011-12-07 16:11:09 · 751 阅读 · 0 评论 -
Linux下的ELF文件格式简介
1. 概述 Executable and linking format(ELF)文件是x86 Linux系统下的一种常用目标文件(object file)格式,有三种主要类型:(1)适于连接的可重定位文件(relocatable file),可与其它目标文件一起创建可执行文件和共享目标文件。(2)适于执行的可执行文件(executable file),用于提供程序的进程映像,加转载 2010-05-10 15:27:00 · 339 阅读 · 0 评论 -
OBEX
一、什么是OBEX,它有什么用途?OBEX全称为Object Exchange,中文对象交换,所以称之为对象交换协议。它在此软件当中有着核心地位,文件传输和IrMC同步都会使用到它。OBEX协议构建在IrDA架构的上层. OBEX协议通过简单的使用“PUT”和“GET”命令实现在不同的设备、不同的平台之间方便、高效的交换信息。支持的设备广泛,例如PC,PDA,电话,摄像头,自动答录机,转载 2012-06-25 16:55:10 · 691 阅读 · 0 评论 -
IMSI、IMEI、ESN、MEID
IMSI国际移动用户识别码(IMSI:International Mobile Subscriber Identification Number)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。IMSI组成如下图所示,其总长度不超过15位,同样使用0~9 的数字。其中MCC是移动用户所属国家代号,占3位数字,中国的MCC规定为460;MNC是移动网号码,最多由两位数字组成,用转载 2012-06-19 10:59:08 · 1212 阅读 · 0 评论 -
Syncml协议简述
目前,移动计算和通信设备的流行很大部分原因是因为它们具有一些方便的功能,比如说在需要时可以发送信息给其他用户,用户希望随时随地都可以利用掌上设备访问信息和执行应用程序,甚至在飞行中也可以获得和更新信息。具有在一台掌上设备运行应用程序和处理信息、还可以将应用程序和信息的更新同步回到办公室的设备或者网上的这种能力对于普遍、离线计算的效用和流行是一个关键。遗憾的是,到今天为止还有两种方式没有实现转载 2012-06-26 14:20:08 · 700 阅读 · 0 评论 -
高性能服务器的设计原则
在很多编程论坛里经常会看到有人讨论如何开发高性能服务器的问题,但是初学者往往会把精力纠结到API的使用上,错误的认为使用了一些高级的API就意味着高性能,属于只见树木不见森林。以下是我认为高性能服务器设计应该遵循的一些基本原则:1. 有明确的服务器性能设计目标在不同应用场合中的服务器对性能的需求是不一样的,有些需要处理大量的并发连接,有些追求高实时性(低延迟),有些则追求高吞吐量,有些要求转载 2013-04-27 15:11:25 · 562 阅读 · 0 评论 -
3des加密解密
#include "stdafx.h"#include #include #include #pragma comment(lib, "crypt32.lib") LPTSTR Base64Decode(LPCTSTR lpData, DWORD dwSize){ DWORD dwResult = 0; if(CryptStringToBinary(lpD转载 2013-04-28 21:55:32 · 1051 阅读 · 0 评论 -
Mutex 和 Critical Section 的异同 - 表格形式,一目了然
Mutex 和 Critical Section 的异同 - 表格形式,一目了然Posted on Tuesday, July 11, 2006 4:02 PM #C & C++ Mutex和Critical Section都是主要用于限制多线程(Multithread)对全局或共享的变量、对象或内存空间的访问。下面是其主要的异同点(不同的地方用绿色表示)。转载 2013-05-31 14:10:21 · 760 阅读 · 0 评论 -
STL删除list元素
list.push_back(2); mylist.push_back(3);mylist.push_back(1);mylist.push_back(2); // 删除元素2 // 方式一 mylist.remove(2); // 方式二 mylist.erase(remove_if(mylist.b转载 2013-05-30 10:59:34 · 536 阅读 · 0 评论 -
创建单链表,并排序插入一元素后仍有序
#include#includestruct node //声明结构体类型名{ int data; //结点存放的数据 struct node *next;//指向下一个结点的指针};struct node *create_slist()//建立单链表的函数,返回的是头结点{ int x; struct node *head,*s,*r;转载 2013-05-28 17:58:35 · 1736 阅读 · 0 评论 -
C++ STL学习笔记五 slist单向链表容器
/* * ******************************************** * slist单向链表容器的基础说明: ******************************************** * * slist是SGI C++STL自设的一个容器,要安装配置stlport才可以使用 * * Front Insertion转载 2013-05-28 17:57:57 · 544 阅读 · 0 评论 -
c++ 单链表基本操作
#include #include #include #include #include /*c++实现简单的单链表操作*/using namespace std;typedef struct student{ int data; struct student *next;}node;//建立单链表 node *cre转载 2013-05-28 17:57:07 · 563 阅读 · 0 评论 -
选择STL合适容器
大家知道,c++的STL标准库很好用,里面的vector,list,deque,stack,slist,set,map,都很好用。但是,在实际编程过程中,如何根据自己的项目需求选择里面的一种容器呢? 最好的办法就是了解其中的原理,然后做选择。(补充,如果项目中不考虑效率,就不用考虑那么多了~毕竟STL从头到尾都考虑了效率问题。)vectorvector的基本原理如下:转载 2013-05-14 11:21:12 · 523 阅读 · 0 评论 -
STL hash_map使用
今天在使用STL中的hash_map模板遇到使用PTCHAR作为Key时无法对字符串进行正确比较的问题,在网上查找相应的文章可惜没有找到,但找到了http://www.stlchina.org/twiki/bin/view.pl/Main/STLDetailHashMap和http://www.cppblog.com/guojingjia2006/archive/2008/01/12/41037.转载 2013-05-13 15:14:14 · 464 阅读 · 0 评论