2014年2月28日
摘要: Windows消息机制要点1. 窗口过程 每个窗口会有一个称为窗口过程的回调函数(WndProc),它带有四个参数,分别为:窗口句柄(Window Handle),消息ID(Message ID),和两个消息参数(wParam, lParam), 当窗口收到消息时系统就会调用此窗口过程来处理消息。(所以叫回调函数) 2 消息类型 1) 系统定义消息(System-Defined Messages) 在SDK中事先定义好的消息,非用户定义的,其范围在[0x0000, 0x03ff]之间, 可以分为以下三类: 1> 窗口消息(Windows Message) 与窗口的内部运作有关,如创建窗口 阅读全文
posted @ 2014-02-28 08:28 bitbit 阅读(229) 评论(0) 推荐(0) 编辑
  2014年2月27日
摘要: VS2010没有Intellisense(智能感知)的解决办法Visual Studio 2010 的Intellisense是依赖于Microsoft SQL Server Compact 3.5的,如果因为卸载SQL Server或其他微软产品时卸载了SQL Server Compact 3.5,智能感知功能就无法使用。解决方法:下载安装SQL Server Compact 3.5 SP2可以修复此问题http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=5783 阅读全文
posted @ 2014-02-27 17:39 bitbit 阅读(960) 评论(0) 推荐(0) 编辑
  2014年2月26日
摘要: 1 模块化设计,面向接口开发。把握设计原则。2 不断重构设计和代码,一个大幅提高开发效率的好方法:不断重构既有代码和设计,为复用准备。同时也是优化。 阅读全文
posted @ 2014-02-26 16:41 bitbit 阅读(236) 评论(0) 推荐(0) 编辑
摘要: AfxBeginThread用户界面线程和工作者线程都是由AfxBeginThread创建的。现在,考察该函数:MFC提供了两个重载版的AfxBeginThread,一个用于用户界面线程,另一个用于工作者线程,分别有如下的原型和过程:用户界面线程的AfxBeginThread用户界面线程的AfxBeginThread的原型如下:CWinThread* AFXAPI AfxBeginThread( CRuntimeClass* pThreadClass, int nPriority, UINT nStackSize, DWORD dwCreateFlags, LPSECURITY_AT... 阅读全文
posted @ 2014-02-26 16:19 bitbit 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 内容: 1、基本概念 2、WINDOWS完成端口的特点 3、完成端口(Completion Ports )相关数据结构和创建 4、完成端口线程的工作原理 5、Windows完成端口的实例代码WINDOWS完成端口编程 摘要:开发网络程序从来都不是一件容易的事情,尽管只需要遵守很少的一些规则:创建socket,发起连接,接受连接,发送和接收数据,等等。真正的困难在于:让你的程序可以适应从单单一个连接到几千个连接乃至于上万个连接。利用Windows完成端口进行重叠I/O的技术,可以很方便地在Windows平台上开发出支持大量连接的网络服务程序。本文介绍在Windows平台上使用完成端口模型开发的基 阅读全文
posted @ 2014-02-26 15:45 bitbit 阅读(1923) 评论(0) 推荐(1) 编辑
摘要: 手把手教你玩转SOCKET模型之重叠I/O篇“身为一个初学者,时常能体味到初学者入门的艰辛,所以总是想抽空作点什么来尽我所能的帮助那些需要帮助的人。我也希望大家能把自己的所学和他人一起分享,不要去鄙视别人索取时的贪婪,因为最应该被鄙视的是不肯付出时的吝啬。” ----- 题记 By PiggyXP(小猪)前 言 其实我首先应该道歉,因为7月份的时候曾信誓旦旦的说要写一套关于SOCKET所有模型的入门文章以及配套代码,不过没想到后天竟然被美女所迷出去度假了,刚刚回来不久。。。。。。-_-b其实那些模型的配套代码我已经基本写完了,只是没写配套文字,不过我想还是先从稍微难一点的模型写起吧,因为其他. 阅读全文
posted @ 2014-02-26 15:42 bitbit 阅读(438) 评论(0) 推荐(0) 编辑
摘要: bss段,代码段及数据段,堆栈段的区别时间:2012-11-21 10:0772人阅读BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block Started by Symbol的简称。BSS段属于静态内存分配。数据段:数据段(data segment)通常是指用来存放程序中已初始化的全局变量的一块内存区域。数据段属于静态内存分配。代码段:代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读,某些架构也允许代码段为 阅读全文
posted @ 2014-02-26 15:39 bitbit 阅读(798) 评论(0) 推荐(0) 编辑
摘要: 不要轻视拷贝构造函数与赋值函数由于并非所有的对象都会使用拷贝构造函数和赋值函数,程序员可能对这两个函数 有些轻视。请先记住以下的警告,在阅读正文时就会多心: ?? 如果不主动编写拷贝构造函数和赋值函数,编译器将以“位拷贝” 的方式自动生成缺省的函数。倘若类中含有指针变量,那么这两个缺省的函数就隐 含了错误。以类String 的两个对象a,b 为例,假设a.m_data 的内容为“hello”, b.m_data 的内容为“world”。 现将a 赋给b,缺省赋值函数的“位拷贝”意味着执行b.m_data = a.m_data。 这将造成三个错误:一是b.m_data 原有的内存没... 阅读全文
posted @ 2014-02-26 15:37 bitbit 阅读(264) 评论(0) 推荐(0) 编辑
摘要: Rational Rose 2003 逆向工程转换C++源代码成UML类图1.ANSI C标准C逆向工程Reverse Engineer网上的关于从C++代码到UML类图生成过程的东西不少,找了个能用的,现在转下,以备不时之需。转来稍微调整了下内容,只关心使用。原出处http://siulyn.blog.163.com/blog/static/6245583620087252539344Rational Rose 2003逆向工程生成UML模型图这一节主要介绍用户如何使用Rose的逆向工程生成UML模型,并用来进行C++代码的结构分析。Rational Rose可以支持标准C++和Visual 阅读全文
posted @ 2014-02-26 15:35 bitbit 阅读(679) 评论(0) 推荐(0) 编辑
摘要: ——《Effective C++》读书笔记4如果你只是声明一个空类,不做任何事情的话,编译器会自动为你生成: 一个默认构造函数 一个拷贝默认构造函数 一个默认拷贝赋值操作符 一个默认析构函数 这些函数只有在第一次被调用时,才会别编译器创建。所有这些函数都是inline和public的。默认的析构函数是非虚函数(除非基类有自己声明的虚析构函数)。而拷贝默认构造函数和默认拷贝赋值操作符知识是单纯将来源对象的每一个非静态成员拷贝到对象目标中(bitwise copy)。其中的默认拷贝赋值操作符只有在生成的代码合法并且有机会证明它有意义存在时才会生成。这就说明,如果你打算在一个“内含引用成员”或者“内 阅读全文
posted @ 2014-02-26 15:33 bitbit 阅读(628) 评论(0) 推荐(0) 编辑