Welcome 微信登录

首页 / 软件开发 / C++

利用C++模板,代替虚函数实现类的静态多态性

利用C++模板,代替虚函数实现类的静态多态性

利用C++模板,代替虚函数实现类的静态多态性2011-04-21 csdn 肖舸熟悉模板编程的朋友或许听到过这个技巧或者模式:Barton-Nackmann 技巧或者称 奇异 循环模板模式(Curiously Recurring Template Prattern)。其实在 《c++ 编程语 言》这本bible 书里,在模板那章提到过一个很奇妙的类的实现,用的就是这个技术。当时 ,我就被C++模板技术叹为观止。近期在学boost库时偶然碰到了这个技巧,同时...
MFC教程(12)-- 对话框和对话框类CDialog(1)

MFC教程(12)-- 对话框和对话框类CDialog(1)

MFC教程(12)-- 对话框和对话框类CDialog(1)2010-03-26对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的。模式和无模式对话框对话框分两种类型,模式对话框和无模式对话框。模式对话框一个模式对话框是一个有系统菜单、标题栏、边线等的弹出式窗口。在创建对话框时指定WS_POPUP, WS_SYSMENU, WS_CAPTION和 DS_MODALFRAME风格。即使没有指定WS_VISIBLE风格...
WINX窗口类对象的内存管理

WINX窗口类对象的内存管理

WINX窗口类对象的内存管理2011-04-21 csdn博客 许式伟为了引入WINX窗口类对象的内存管理(生命周期模型),我绕了一大圈子。实在是,内存 管理太重要了,花多少口舌介绍它都不过分。我曾经见到这样一句话:"C++程序员觉得 内存管理太重要了,所以一定要自己进行管理;Java/C#程序员觉得内存管理太重要了,所以 一定不能自己去管理"。从某种意义上说,两者都是对的。那么WINX的窗口对象是否也是采用gc allocator呢?...
MFC教程(12)-- 对话框和对话框类CDialog(2)

MFC教程(12)-- 对话框和对话框类CDialog(2)

MFC教程(12)-- 对话框和对话框类CDialog(2)2010-03-26RunModalLoop是一个实现自己的消息循环的示例,消息循环的条件是模式化状态没有结束。实现线程自己的消息循环见8.5.6节。当用户按下按钮“取消”、“确定”时,将导致RunModalLoop退出消息循环,结束对话框模式状态,并调用::EndDialog关闭窗口。有关关闭对话框的处理如下:void CDialog::EndDi...
计划在C++建立仿Erlang式的分布式并行机制

计划在C++建立仿Erlang式的分布式并行机制

计划在C++建立仿Erlang式的分布式并行机制2011-04-21 csdn博客 许式伟梳理了下需求,大体如下:进程(Process)。进程是Erlang中一个虚拟的运行单位。既不是操作系统的进程,也不 是线程,而是比线程更加轻量的单位,更接近于协程。命名进程(NamedProcess)。命名进程的好处是,你可以向一个不知道进程ID的进程发送 消息。由于进程可能会宕掉(crash),进程ID可能会发生变化,所以在考虑了异常的环境下 ,命名进程降低了编码的...
MFC教程(14)-- SOCKET类的设计和实现

MFC教程(14)-- SOCKET类的设计和实现

MFC教程(14)-- SOCKET类的设计和实现2010-03-28WinSock基本知识这里不打算系统地介绍socket或者WinSock的知识。首先介绍WinSock API函数,讲解阻塞/非阻塞的概念;然后介绍socket的使用。WinSock APISocket接口是网络编程(通常是TCP/IP协议,也可以是其他协议)的API。最早的Socket接口是Berkeley接口,在Unxi操作系统中实现。WinSock也是一个基于Socket模型的AP...
FMD开发文集 -- CArchive原理

FMD开发文集 -- CArchive原理

FMD开发文集 -- CArchive原理2010-03-28冯明德MFC 提供CArchive类实现数据的缓冲区读写,同时定义了类对象的存储与读取方案。 以下对CArchvie 的内部实现作分析。一.概述 CArchive使用了缓冲区,即一段内存空间作为临时数据存储地,对CArchive的读写都先依次排列到此缓冲区,当缓冲区满或用户要求时,将此段整理后的数据读写到指定的存储煤质。当建立CArchive对象时,应指定其模式是用于缓冲区读,还是用于缓冲区写。...
简单字符串转换

简单字符串转换

简单字符串转换2011-04-21 VC知识库BLOG 终于有了间茅草棚在做字符串、文本操作时,我们时常会需要在wchar_t *和char *之间做转换或搭桥。直 接用API,参数太多不容易记住,常常要查文档,浪费不少时间。为了自己方便,对简单的转 换写了一个简单的转换包装类。下次或者用得着,帖代码做为保存。顺便提一下:发现有个东西很好用,std::stringstream系列 (#include < sstream >);其实,流式操作用起...
FMD开发文集 -- MFC CObject浅析

FMD开发文集 -- MFC CObject浅析

FMD开发文集 -- MFC CObject浅析2010-03-28冯明德CObject是大部分的MFC类的基类 为了完成MFC类的判断、动态生成、序列化等特殊功能,CObject中添加了特定的处理。 为了进一步增强对MFC类对象的理解,在此对CObject源码及相关宏定义进行分析。 (所附代码并非原始代码,为说明问题而作了删减。) 主要介绍了以下几方面内容:1.CObject简要声明2.CRuntimeClass结构3.RUNTIME_CLASS4.DY...
C++高精度实现10000位数字的乘除法

C++高精度实现10000位数字的乘除法

C++高精度实现10000位数字的乘除法2011-04-21 csdn博客 李同辉说明:做了个计算器,本来是要上传整个项目的,但突然发现不能上传资源了,就贴出来 算法部分的代码,大家多多指点啊,呵呵,比较难读,以后再上传整个项目,呵呵//转换,供乘法部分调用int turn(char s[], int num[]){ int i = 0, len, j; while(1) { if(s[i] == 0) break; else if(s[i] == "...
Visual C++ MFC简明教程(1)

Visual C++ MFC简明教程(1)

Visual C++ MFC简明教程(1)2010-03-28Marshall Brain第一部分:MFC导论Visual C++ 不仅仅是一个编译器。它是一个全面的应用程序开发环境,使用它你充分利用具有面向对象特性的 C++ 来开发出专业级的 Windows 应用程序。为了能充分利用这些特性,你必须理解 C++ 程序设计语言。掌握了C++,你就必须掌握 Microsoft 基本类库 (MFC) 的层次结构。该层次 结构包容了 Windows API 中的...
Visual C++ MFC简明教程(2)

Visual C++ MFC简明教程(2)

Visual C++ MFC简明教程(2)2010-03-28Marshall Brain第二部分:一个简单的MFC程序在本将中,我们将一段一段地来研究上一将中提到的 MFC 应用程序,以便能理解它的结构和概念框架。我们将先介绍 MFC,然后在介绍如何用 MFC 来建立应用程序。MFC简介MFC 是一个很大的、扩展了的 C++ 类层次结构,它能使开发 Windows 应用程序变得更加容易。MFC 是在整个 Windows 家族中都是兼容的,也就是说,无论是...
Visual C++ MFC简明教程(3)

Visual C++ MFC简明教程(3)

Visual C++ MFC简明教程(3)2010-03-28Marshall Brain第三部分:MFC样式控制是用来建立Windows应用程序用户界面的用户界面对象。你所见到的大部分Windows应用程序和对话框只不过是由一些控制所组成的、用来实现程序功能的东西。为了建立有效的应用程序,你必须完全理解在Windows应用程序中应该如何合理的使用控制。有六个基本的控制:CStatic、CButton、CEdit、CList、CComboBox和CScro...
变体(Variant)与Dispatch调用(IDispatch)

变体(Variant)与Dispatch调用(IDispatch)

变体(Variant)与Dispatch调用(IDispatch)2011-04-21 csdn博客 许式伟变体(Variant)Variant类型理论上可以存放任何类型的数据,这也是中文很多 人称之为“变体”的原因。对于C++这种强类型语言的程序员来说,存在变体 (Variant)这样的类型是奇怪的。但是对于哪些淡化类型概念的语言(如Visual Basic等) 来说,Variant是它们默认的类型。在VB中,如果没有用As语句声...
Visual C++ MFC简明教程(4)

Visual C++ MFC简明教程(4)

Visual C++ MFC简明教程(4)2010-03-28Marshall Brain第四部分:消息映射应用程序放在窗口中的任何用户界面对象都具有两种可控制的特性:1) 它的外观,2) 它响应事件的行为。在上一讲中,你已经学习了CStatic控制和如何使用样式属性来定制用户界面对象的外观。这些概念可用于MFC中的所有不同控制类。在本讲中,我们将介绍CButton控制,以理解消息映射和简单的事件处理。然后还要介绍使用CScrollBar控制的稍微复杂点的...
<< 241 242 243 244 245 246 247 248 249 250 >>