自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

kedoumy的专栏

每天进步一点点...

  • 博客(43)
  • 收藏
  • 关注

转载 STL之父访谈录

STL之父访谈录       翻译者 : myan出处: http://www.sgi.com/technology/stl  1995 年3月,dr.dobbs journal特约记者, 著名技术书籍作家al stevens采访了stl创始人alexander stepanov. 这份访谈纪录是迄今为止对于stl发展历史的最完备介绍, 侯捷先生在他的stl有关文章里推荐大家阅读这篇文章. 因此

2008-05-13 14:14:00 455

转载 什么时候会用到拷贝构造函数?

1-什么时候会用到拷贝构造函数? 2-什么时候有必要手动写拷贝构造函数?1-什么时候会用到拷贝构造函数?        当任何你想复印东西的时候,而不管东西被复印成什么样子。即任何你想利用一个已有的类实例给另一个类实例赋值时,这种赋值可能是显式的,也可能是隐式的显式:classa_1=class_2;隐式:函数的形参有用到类对象却没有用引用或传址技术时            函数的返回值是一个对象

2008-05-12 12:10:00 585

转载 P2P直播相关(转)

最近对P2P直播技术进行了一些研究,谈谈个人对Tvkoo软件的优缺点的看法,一方面希望Tvkoo能做的更好,另一方面也抛砖引玉一下:P2P直播的技术难点有:一、防火墙的穿透:超过90%的电脑都在防火墙后面,如果让2台在防火墙后面的电脑能够实现P2P互联,这是一个技术的难点。有2种方式:1. 要求用户配置TCP端口:BT和电驴采用的方式,配置需要网络专业知识。一般做法是通过在防火墙

2008-05-09 17:44:00 649

转载 详细解说STL hash_map系列

详细解说STL hash_map系列 0 为什么需要hash_map 1 数据结构:hash_map原理 2 hash_map 使用 2.1 一个简单实例 2.2 hash_map 的hash函数

2008-05-07 17:32:00 399

原创 勤奋 坚持

看多了那些程序员的奋斗史,我发现我啥也没做过,而且都停留在表面,其实也不是没有学习计划,只是在那里哀怨,从今天起,需要对事物进行深究,才能提高自己,再就是要勤奋,坚持,加油~~~~

2008-05-07 17:30:00 477

转载 vs2003 快捷键一览

“全局”快捷键下列快捷组合键可用于集成开发环境 (IDE) 中的不同位置。 命令名 快捷键 说明 编辑.复制 CTRL + CCTRL + INSERT 将当前

2008-05-05 11:19:00 343

转载 位图和调色板

如今Windows(3.x以及95,98,NT)系列已经成为绝大多数用户使用的操作系统,它比DOS成功的一个重要因素是它可视化的漂亮界面。那么Windows是如何显示图象的呢?这就要谈到位图(bitmap)。我们知道,普通的显示器屏幕是由许许多多点构成的,我们称之为象素。显示时采用扫描的方法:电子枪每次从左到右扫描一行,为每个象素着色,然后从上到下这样扫描若干行,就扫过了一屏。为了防止闪烁,每

2007-10-15 11:54:00 932

转载 数字图像处理算法实现 编程心得

摘要: 关于空间域图像处理算法框架,直方图处理,空间域滤波器算法框架的编程心得,使用GDI+(C++)一,图像文件的读取    初学数字图像处理时,图像文件的读取往往是一件麻烦的事情,我们要面对各种各样的图像文件格式,如果仅用C++的fstream库那就必须了解各种图像编码格式,这对于初学图像处理是不太现实的,需要一个能帮助轻松读取各类图像文件的库。在Win32平台上GDI+(C++)是不

2007-10-12 17:14:00 3596

转载 深入研究 C++中的 STL Deque 容器(三)

 实验四—— vector::insert() 和 deque::insert() 执行特点比较  目的  deque主张使用参数为常量的insert()。但怎么样能和vector::insert()比较一下呢?本实验的目的就是比较一下vector::insert()> 和 deque::insert()的工作特点。   描述  在容器的容器多次插入数据,在这里可能不符合你的需求,既然这样你可以使

2007-10-11 16:59:00 2126

转载 深入研究 C++中的 STL Deque 容器(二)

实验二—— vector::reserve()的资源  目的  这个实验的目的是vector在加入大量数据之前调用reserve(),和deque进行比较,看它们的内存分配和执行效率怎么样?  描述  本实验中的测试基本上和实验一相同,除了在测试类的构造函数中加入下面这行代码: m_vData.reserve(1000000);

2007-10-11 16:58:00 751

转载 深入研究 C++中的 STL Deque 容器(1)

本文档深入分析了std::deque,并提供了一个指导思想:当考虑到内存分配和执行性能的时候,使用std::deque要比std::vector好。  介绍  本文深入地研究了std::deque 容器。本文将讨论在一些情况下使用 deque> 比vector更好。读完这篇文章后读者应该能够理解在容量增长的过程中deque

2007-10-11 16:55:00 662

转载 VC++常用数据类型及其操作详解(未完待续)

 目录一.              VC常用数据类型列表二.              常用数据类型转化2.1数学类型变量与字符串相互转换2.2CString及string,char *与其他数据类型的转换和操作●CString,string,char*的综合比较●数学类型与CString相互转化●CString与char*相互转换举例●CString 与 B

2007-10-11 11:01:00 741

转载 第5章 彩色数字图像基础

 图像是多媒体中携带信息的极其重要的媒体,有人发表过统计资料,认为人们获取的信息的70%来自视觉系统,实际就是图像和电视。但是,图像数字化之后的数据量非常大,在因特网上传输时很费时间,在盘上存储时很占“地盘”,因此就必须要对图像数据进行压缩。压缩的目的就是要满足存储容量和传输带宽的要求,而付出的代价是大量的计算。几十年来,许多科技工作者一直在孜孜不倦地寻找更有效的方法,用比较少的数据量表达原始的图

2007-10-11 10:57:00 5595 1

转载 C++运算符重载探讨

2002-09-16· ·阿青··VC大本营前言  多态性是面向对象程序设计的重要特征之一。它与前面讲过的封装性和继承性构成了面向对象程序设计的三大特征。这三大特征是相互关联的。封装性是基础,继承性是关键,多态性是补充,而多态又必须存在于继承的环境之中。  所谓多态性是指发出同样的消息被不同类型的对象接收时导致完全不同的行为。这里所说的消息主要是指对类的成员函数的调用,而不同的行为是指不同的实现。

2007-10-10 14:24:00 2387 1

转载 如何把多个文件写入到一个文件中去并能分解

对于一个文件的读写,其实很简单,就是用FileStream进行Read或者Write就行了。但是如何把多个文件写入到同一个文件,之后要能把这个文件进行还原成多个文件。那么光靠FileStream的Read和Write方法是不够的,首先你需要自行建立文件索引,来标明每个文件在当前文件的位置。 那么最近作了一个简单的DEMO,其中类的部分代码如下://-------------------

2007-10-10 14:13:00 575

转载 插花问题的“动态规划法”算法

 // Layout.cpp : Defines the entry point for the console application./* 作者:成晓旭 时间:2001年10月11日(11:35:38-12:35:00) 内容:完成插花问题的“动态规划法”算法及注解*/#include "stdafx.h"#include "string.h"#define MAX(A,B) ((A) >

2007-10-10 13:52:00 571

转载 Windows API函数大全

 1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一个网络连接 WNetCancelConnection2 结束一个网络连接 WNetCloseEnum 结束一次枚举操作 WNetC

2007-10-09 18:22:00 572

转载 用Win32 API创建不规则窗口

 <!--google_ad_client = "pub-9346728666813782";google_alternate_color = "FFFFFF";google_ad_width = 468;google_ad_height = 60;google_ad_format = "468x60_as";google_ad_type = "text_image

2007-10-09 18:19:00 879

转载 WTL控件的自画操作

 Windows 为控件提供了自画(owner draw)的能力,程序员可以通过这一机制实现非常酷的控件外观。WTL(Windows Template Library)提供了一个CownerDraw模板,用来对控件的自画操作提供支持。  COwnerDraw 的声明为如下形式:template <class T> class CownerDraw{ ……                      

2007-10-09 18:16:00 1584

转载 BMP文件结构

1. BMP文件组成   BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。   2. BMP文件头   BMP文件头数据结构含有BMP文件的类型、文件大小和位图起始位置等信息。   其结构定义如下:typedef struct tagBITMAPFILEHEADER{WORDbfType; // 位图文件的类型,必须为BMDWORD bfSize; // 位图文件的大小,以字节为

2007-10-09 16:34:00 611

原创 using namespace std(部分问题)

问题:#include   #include   using   namespace   std; void   main(   )   { string   s[2]   =   {"asdf","adadff"}; cout } 这个就没有错,为什么下面的程序就报错?? #include   #include   //using   namespace   std; void  

2007-10-09 15:20:00 714

转载 C++异常和Windows结构异常的比较

 Windows结构异常有如下几个特性: 1、它使用__try、__except、__finally和__leave关键字和RaiseException API; 2、它由Windows所支持,因此它不适合其它操作系统 3、它不处理C++对象的解析 说明:在使用Windows结构异常的函数内,如果有C++对象,编译器会发 出:error C2712: Cannot use

2007-10-09 10:02:00 914

转载 异常小结

 一.        为什么要使用异常:因为在程序的执行过程中总会遇到许多可以预知或不可以预知的错误事件,例如:由于内存耗尽导致内存分配失败、文件操作失败、内存越界、数组越界、除零等。因此,程序员总需要在程序中不断加入if语句,来判断是否有异常出现,如果有,就必须要及时处理。这样一来,程序的可读性就差了很多,总有许多与真正工作无关的代码。使用C++的异常处理机制有以下的优点:1. 

2007-10-09 09:55:00 464

转载 C++内联函数(Inline)介绍

 介绍内联函数之前,有必要介绍一下预处理宏。内联函数的功能和预处理宏的功 能相似。相信大家都用过预处理宏,我们会经常定义一些宏,如  #define TABLE_COMP(x) ((x)>0?(x):0)     就定义了一个宏。    为什么要使用宏呢?因为函数的调用必须要将程序执行的顺序转移到函数所存放 在内存中的某个地址,将函数的程序内容执行完后,再返回到转去执行该函数前的地 方。这种转移操

2007-10-08 15:54:00 681

转载 位图

 位图位图是一个二维的位数组,它与图像的图素一一对应。当现实世界的图像被扫描成位图以后,图像被分割成网格,并以图素作为取样单位。在位图中的每个图素值指明了一个单位网格内图像的平均颜色。单色位图每个图素只需要一位,灰色或彩色位图中每个图素需要多个位。位图代表了Windows程序内储存图像信息的两种方法之一。储存图像信息的另一种形式是metafile,我将在第十八章讨论。Metafile储存的

2007-10-08 15:43:00 1351

转载 WTL之父Nenad Stefanovic访谈录

 myan引介作为现代C++最重要的特色技术,template正在各个传统领域攻城略地。从基本算法与数据结构,到正则表达式与XML解析,从高性能数学计算,到资源的分配与管理,从网络分布式计算环境,到组件模型创建,从静态多态性的维度扩展,到设计模式的自动生成,神奇的template显示出其令人叹为观止的强劲实力,如果不是有一个隐隐的痛处,template爱好者简直可以去狂欢了。这个隐隐的

2007-10-08 14:09:00 431

转载 深入剖析WTL—WTL消息循环机制详解

  消息过滤首先看一下CMessageLoop的核心逻辑CMessageLoop.Run()的代码: int CMessageLoop.Run() { BOOL bDoIdle = TRUE; int n

2007-10-08 14:05:00 696

转载 深入剖析WTL——Win32模型

  深入剖析WTL——Win32模型  WTL 是Windows Template Library的缩写。最初,WTL是由微软的ATL(Active Template Library)小组成员开发的一个SDK例子。主要是基于ATL的对Win32 API的封装。从2.0后,功能逐步完善,成为了一个完整的支持窗口的框架(windows framework)。 与MFC相比较,功能并没有MF

2007-10-08 12:35:00 524

转载 深入剖析WTL——如何封装Windows界面程序

 深入剖析WTL——如何封装Windows界面程序  首先还是让我们来看看WTL是怎样封装应用程序线程的。 和ATL类似,WTL使用一个_Module全局变量来保存全局数据,并通过它来引用应用程序级的代码。在WTL中,该变量是CAppModule或CServerAppModule的实例。后者通常作为COM服务器的应用程序。 每个应用程序都有一个或多个界面线程组成。首先剖析一下WTL是怎样管

2007-10-08 12:32:00 588

转载 WTL源码剖析 --- ATLAPP.H

WTL源码剖析 --- ATLAPP.H   作者:姜江QQ:457283E-mail:[email protected]包含了消息循环类、接口类、和产生应用程序所必需的一些基础类定义。       类定义如下:              CmessageFilter类---用于消息过滤的        CidleHandler 类---用于空闲消息处理的  

2007-10-08 12:30:00 1342

转载 Window 消息大全使用详解

  Window 消息大全使用详解    

2007-09-30 11:13:00 532

转载 深入剖析WTL—WTL框架窗口分析(1)

WTL的基础是ATL。WTL的框架窗口是ATL窗口类的继承。因此,先介绍一下ATL对Windows窗口的封装。 由第一部分介绍的Windows应用程序可以知道创建窗口和窗口工作的逻辑是: 1 注册一个窗口类 2 创建该类窗口 3 显示和激活该窗口 4 窗口的消息处理逻辑在窗口函数中。该函数在注册窗口类时指定。 从上面的逻辑可以看出,要封装窗口主要需解决怎样封装窗口消息处理机制。 对于窗口消息处理机

2007-09-30 11:05:00 543

转载 深入剖析WTL—WTL框架窗口分析(2)

ATL的消息处理宏消息映射的目的是实现ProcessWindowMessage()。ProcessWindowMessage()函数是窗口函数的关键逻辑。 一共有三种消息处理宏,分别对应三类窗口消息——普通窗口消息(如WM_CREATE),命令消息(WM_COMMANS)和通知消息(WM_NOTIFY)。 消息处理宏的目的是将消息和相应的处理函数(该窗口的成员函数)联系起来。 · 普通消息处理宏

2007-09-30 11:04:00 423

转载 深入剖析WTL—WTL框架窗口分析(4)

superclass是一种生成新的窗口类的方法。它的中心思想是依靠现有的窗口类,克隆出另一个窗口类。被克隆的类可以是Windows预定义的窗口类,这些预定义的窗口类有按钮或下拉框控制等等。也可以是一般的类。克隆的窗口类使用被克隆的类(基类)的窗口消息处理函数。 克隆类可以有自己的窗口消息处理函数,也可以使用基类的窗口处理函数。 需要注意的是,superclass是在注册窗口类时就改变了窗口的行为。

2007-09-30 11:01:00 478

转载 深入剖析WTL—WTL框架窗口分析(3)

在上面的例子中,CDerived从CBase中派生出来。CDerived类通过定义一个WM_LBUTTONDOWN消息处理函数来改变CBase类代表的窗口的功能。 这样,CBase类的消息映射定义了一个ProcessWindowMessage()函数,而CDerived类的消息映射也定义了一个ProcessWindowMessage()函数。 那么,我们在窗口处理函数逻辑中怎样把这两个类的Proc

2007-09-30 10:58:00 435

转载 深入剖析WTL—WTL框架窗口分析(5)

ATL对窗口消息处理函数的封装 在本节开始部分谈到的封装窗口的两个难题,其中第一个问题是怎样解决将窗口函数的消息转发到HWND相对应的类的实例中的相应函数。 下面我们来看一下,ATL采用的是什么办法来实现的。 我们知道每个Windows的窗口类都有一个窗口函数。 LRESULT WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);

2007-09-30 10:54:00 420

转载 深入剖析WTL—WTL框架窗口分析(6)

 WTL对框架窗口的封装ATL仅仅是封装了窗口函数和提供了消息映射。实际应用中,需要各种种类的窗口,比如,每个界面线程所对应的框架窗口。WTL正是在ATL基础上,为我们提供了框架窗口和其他各种窗口。 所有的应用程序类型中,每个界面线程都有一个框架窗口(Frame)和一个视(View)。它们的概念和MFC中的一样。 图示是WTL的窗口类的继承图。 WTL框架窗口为我们提供了: 一个应用程序的标题,窗

2007-09-30 10:52:00 550

转载 WTL编程的十个技巧

介绍这篇文章将介绍十个开发WTL应用程序的小技巧。这些技巧内容涉及从怎么控制和放置应用程序主窗口到怎么在控件中显示字符串和整数等系列问题。你可以到http://www.codeproject.com/wtl/Tips/TipsProject.zip下载使用这十个技巧的示例程序。十个技巧包括:·设置主窗口的大小·启动时在屏幕中央显示主窗口·设置主窗口的最小/最大尺寸·动态加载主窗口标题·将工具栏设置

2007-09-30 10:50:00 648

原创 WTL流程分析

一个窗口从创建到销毁,有这么几个主要过程。在winmain中 注册窗口类 创建窗口 进入消息循环 在wndproc中 处理消息 现在我们就是要挖掘出wtl中在何处处理这些东西,怎么处理的。首先:winmain在哪里?wi

2007-09-30 10:42:00 542

转载 WTL体系结构

 绪论     WTL最终来了,而且提供了我所希望的功能.我在WTL Bytesize(译文)的文章列出WTL主要特征.在本文中,我将描述一下WTL的体系结构,同时我会给出一些简单的例子来演示如何使用它的那些特征.希望能够对您有所帮助. WTL应用程序的类型     WTL有好几种应用程序类型,供您在AppWizard选取.    下表对这些应用程序进行了描述. 这种弹性构成了

2007-09-30 10:39:00 805

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除