- 博客(12)
- 资源 (50)
- 收藏
- 关注
原创 【C++泛型编程】模板偏特化、局部类和型别映射(Int2Type,Type2Type)以及型别选择
1.模板偏特化 模板偏特化是让你在template的所有可能实体中特化出一组子集。下面是一个模板全特化的例子,假设有一个类模板,名为Widget:templateclass Widget{....各种操作.....};特化的情况如下:templateclass Widget{...各种特化后的操作...};其中ModalDia
2012-08-31 20:11:12 2750 3
原创 【C++泛型编程】编译期错误检测
泛型编程如果需要在各个平台上进行移植,并且保证不让移植的代码出现潜在的错误,我们需要采用编译期错误检测而不是执行期的错误检测。随着泛型编程在C++中广泛运用,更好的静态检验以及更好的可定制型错误消息的需求浮现了出来。例子:如下安全转型的函数 templateTo safe_reinterpret_cast(From from){ assert(sizeof(From
2012-08-31 18:51:53 1879
原创 【C++泛型编程】基于策略(Policy)的类设计
基于策略(Policy)的类设计是将templates和多重继承组合起来,这样可以产生程序库中的“设计元素”。Policies由templates和多重继承组成。一个class如果使用了policies,就称其为host class,那是一个拥有多个template参数的class template,每一个参数代表一个policy.host class所有的机能都来自policies,运作起来就像
2012-08-31 15:51:22 2806 1
转载 UML用例图总结
转载请注明出处:http://blog.csdn.net/tianhai110 用例图主要用来描述用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求。 用例图所包含的元素如下:1. 参与者(Actor)表示与您的应用程序或系统进行交互的用户、组织或外部系统。用一个
2012-08-27 10:12:47 706
转载 UML类图几种关系的总结
在UML类图中,常见的有以下几种关系:泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1.泛化(Generalization)【泛化关系】:是一种继承关系,它指定了子类如何特化父类的所有特征和行为例如:老虎是动物的一种.【箭头指向】
2012-08-27 10:06:40 759
原创 C++回调函数问题的解决方案
例子源代码下载地址:http://download.csdn.net/detail/xiaoding133/45271651.问题提出C++不像其他面向对象语言(如Object Pascal,Ada语言,Java和C#)提供了将一个类的方法作为回调函数的解决方案。在C语言中,这些回调函数普遍存在以事件驱动的应用程序当中。问题的解决是围绕这样一个事实:即一个特定的类的多个实例存放于不同的内存
2012-08-26 19:49:45 1390
原创 C#获取用户系统信息的程序
介绍在这个程序当中,主要通过下面两个类获取用户系统的信息:System.EnvironmentSystem.Managememnt应用程序包括三个tab菜单,分别是:SystemCPULocal drives程序外观如下图: 在 System 菜单中,用 System.Environment 类来获取系统信息 : private string
2012-08-22 16:14:42 3567
原创 字典与散列表
一、字典字典(dictionary)是一些元素的集合。每个元素有一个称作key 的域,不同元素的key各不相同。有关字典的操作有:• 插入具有给定关键字值的元素。• 在字典中寻找具有给定关键字值的元素。• 删除具有给定关键字值的元素。随机访问:若仅按照一个字典元素本身的关键字来访问该元素。顺序访问:指按照关键字的递增顺序逐个访问字典中的元素。顺序访问需借助于Be
2012-08-21 16:54:59 3341
原创 【C++STL】C++ Standard Template Library三个重要元素
一、STL三个最重要的元素是容器,迭代器,算法1.容器容器是用来管理其他对象的对象,让用户来决定是使用值还是引用。容器一般用模板类来实现。STL并没有采用面向对象的技术,所以STL中并没有一个通用的容器类,即没有统一的基类。2.迭代器迭代器的工作方式如指针。根据不同的应用,它可能是普通的指针或者是对象指针。迭代器通常用来获取容器中的元素,可以从第一个元素移动到另外一个元
2012-08-10 12:36:32 1019
原创 【win32多线程】使用C++编写多线程
1.以一个C++对象启动一个线程 Q:如何以一个C++成员函数当做线程的起始函数? 错误的例子#include #include #include typedef unsigned (WINAPI *PBEGINTHREADEX_THREADFUNC)( LPVOID lpThreadParameter );typedef unsigne
2012-08-04 08:18:09 2156
原创 【Win32多线程】使用C runtime Library
如何避免使用 c runtime stdio 函数,改用Win32 Console API 如果使用MFC来开发程序,不要使用_beginthreadex()或CreateThread().若没有使用MFC,那么应该总是和多线程版本的C Run-time Library 链接,并且总是以_beginthreadex()和_endthreadex()取代CreateThread()和Exit
2012-08-02 16:08:11 1466
原创 【win32多线程】数据的一致性问题,即多个线程读写数据问题
1.把锁定搬到更高的层次void AddLineItems(List *pList){Node node;while(){getLineItem(&item);AddHead(pList,&node);}}void AddHead(List *pList,Node *pNode){EnterCriticalSection(&pList->crit
2012-08-02 14:40:53 1208 1
实用语音识别基础
2014-07-12
.net记录滚动条位置代码
2011-08-14
Asp.net将数据库中的数据导出为Excel, PDF, HTML, RTF, XML等
2011-08-09
学生成绩管理系统--论文
2010-05-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人