- 博客(22)
- 资源 (15)
- 收藏
- 关注
原创 模版的特化与偏特化
Partial Template Specialization能够让你在模板(Template)的所有可能的实体中特化出一组子集. 1.模板的特化(template specialization): 例如,定义如下的一个模板: template class Widget { ... 泛化实现代码 ... }; 然后你可
2012-12-31 14:26:24 733
原创 模板的全特化与偏特化
模板为什么要特化,因为编译器认为,对于特定的类型,如果你能对某一功能更好的实现,那么就该听你的。模板分为类模板与函数模板,特化分为全特化与偏特化。全特化就是限定死模板实现的具体类型,偏特化就是如果这个模板有多个类型,那么只限定其中的一部分。先看类模板:[cpp] view plaincopyprint?templatetypename T1, typenam
2012-12-31 14:18:34 787
原创 C++模板的特化
【转载】http://www.blogjava.net/bacoo/archive/2009/06/22/283480.html对模板特化的理解:特化整体上分为全特化和偏特化,这一点大家都没有什么置疑,但是细分它们各包括哪几种状态就很难界定了,而且很多权威的书上都不一致,管它呢,反正我们能会用各种特化就可以了。下面就谈谈我个人对特化的划分和定义:所谓特化,就是将泛型的东东搞得具体化
2012-12-31 14:09:28 889
原创 C++类模板的三种特化类型
说起C++的模板及模板特化, 相信很多人都很熟悉 ,但是说到模板特化的几种类型,相信了解的人就不是很多。我这里归纳了针对一个模板参数的类模板特化的几种类型, 一是特化为绝对类型; 二是特化为引用,指针类型;三是特化为另外一个类模板。这里用一个简单的例子来说明这三种情况:// general versiontemplateclass T>class Compare{pub
2012-12-31 14:07:29 1828
原创 STL中mem_fun和mem_fun_ref的用法
引子:怎么对容器中的所有对象都进行同一个操作?我们可能首先想到的是用循环来实现。比如有如下的一个类:class ClxECS{public: int DoSomething() { cout return 0; };};现在定义如下一个vector:vector vECS;for(int i = 0; i
2012-12-28 14:24:00 921
原创 mem_fun_ref,mem_fun,not1,not2,ptr_fun
转自:http://blog.csdn.net/zh634455283/article/details/7791503今天调试程序的时候,遇到了这样一个问题bool check(int elem);vecotv; ...pos=find_if(v.begin(),v.end(),not1(check))竟然出错,查找资料之后,发现,原来原因如下:ptr_f
2012-12-28 13:48:30 1011
原创 STL bind1st、bind2nd的使用【转】
bind1st和bind2nd函数用于将一个二元算子(binary functor,bf)转换成一元算子(unary functor,uf)。为了达到这个目的,它们需要两个参数:要转换的bf和一个值(v)。 可能这么解释以后大家还不是很清楚,那么就说点白话吧。我们在做比较的时候所写的表达式像 x > k ,x x,k int a[] = {1, 2, 100, 200};st
2012-12-28 13:20:43 1506
原创 三十分钟掌握STL
这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个简单的概念,但这种分离
2012-12-28 13:07:23 2354 3
原创 新兴Web技术杂谈 之 WebSocket
开篇最近几年随着各大浏览器以及Web标准技术的蓬勃发展, 基于浏览器的B/S应用已经渐渐变得与我们过去所认知的完全不同。尤其是移动互联设备的兴起以及HTML5的诞生,将Web开发带入了一个全新的时代。借助各种先进的技术,Web应用有了更好的用户体验 更强大的功能和性能,很多原本只能在桌面原生应用中做到的事情现在也可以在Web中完成,甚至可以完成的更好。同时,这些新兴的Web技术也逐
2012-12-28 09:27:47 3758
原创 HTML5-WebSocket实现对服务器CPU实时监控
由于WebSocket允许保持长连接,因此当建立连接后服务器可以主动地向Client发送相关信息.下面通过服务端获取当前CPU的使用情况主动发送给网页,让网页实时显示CPU使用情况的曲线图.该事例的主要功能是包括服务端获取CPU使和情况和HTML5使用canvas进行曲线图绘制.应用效果实现效果主要是模仿windows的任务管理器,显示每个核的工作情况.C#获取CPU使用情况可
2012-12-28 09:12:13 5748 2
转载 IOCP模型与网络编程
载自:http://blog.csdn.net/neicole/article/details/7549497IOCP模型与网络编程一。前言: 在老师分配任务(“尝试利用IOCP模型写出服务端和客户端的代码”)给我时,脑子一片空白,并不知道什么是IOCP模型,会不会是像软件设计模式里面的工厂模式,装饰模式之类的那些呢?嘿嘿,不过好像是一个挺好玩的东西,
2012-12-26 17:09:13 1458 2
原创 C++函数调用内存分配机制
此日志内容主要来源于两个博客:http://blog.csdn.net/hantang2009/article/details/6411738 http://www.cnblogs.com/dolphin0520/archive/2011/04/04/2005061.html 函数调用的内存分配机制1.同一个类的对象共享同一个成员函数的地址空间,而每个对象有
2012-12-26 08:55:07 3413
原创 给初学者提个醒:C/C++函数里的指针参数也是按值传递的!
转自:http://blog.csdn.net/zhu_xz/archive/2007/10/30/1857133.aspx刚在ChinaUnix.net上看到一个帖子:http://bbs.chinaunix.net/thread-1009233-1-1.html,作者自己写了个strcpy函数。别的就不看了,只看看函数的第一句话:void *strcpy(void *d
2012-12-25 11:29:08 1102
原创 NOSQL资料学习
NoSQL的分类 NoSQL仅仅是一个概念,NoSQL数据库根据数据的存储模型和特点分为很多种类。 类型部分代表特点列存储HbaseCassandraHypertable顾名思义,是按列存储数据的。最大的特点是方便存储结构化和半结构化数据,方便做数据压缩,对针对某一列或者某几列的查询有非
2012-12-24 09:29:14 2688
原创 【异常处理】MFC程序崩溃的友好处理
软件总存在这样或者那样的bug。虽然测试员已经在很努力的寻找问题,程序员也在汗流浃背的除虫,但是总会有一些情况被遗漏或者不可预测,比如用户的硬件环境、网络状况、操作系统差异等等,不一而足。而导致的结果则是弹出下面这样一个让用户摸不着头脑又恼火的提示,然后崩溃掉,令程序员尴尬不已。 而在一些成熟的软件产品中,程序崩溃时我们看到的却是另外一番画面,比如QQ: 又
2012-12-22 10:11:53 5918
原创 《Effective STL》学习笔记
该篇笔记转自以下两个连接:(另外附件里有STL源码分析和编写高质量代码:改善C++程序的150个建议)http://my.csdn.net/swordll80 http://blog.csdn.net/pizi0475/article/details/5382117 条款1:仔细选择你的容器了解各种容器的实现方法,知道各种容器的内存管理方式、各种操作所对应的底层操作
2012-12-22 09:53:32 2688
转载 struct、class和STL的统一内存管理
转自:http://blog.csdn.net/lifesider/article/details/6443375利用C++的new和delete操作符重载特性,可以对自定义的struct和class进行统一内存管理,再加上STL allocator的开放特性,便可以将STL容器对象的内存管理并入struct和class的内存管理,进而将这三者的内存管理统一。 首先实现自定
2012-12-22 09:44:48 959
原创 c++中如何利用vector fstream进行文件的读取
#include#include #include #include #include using namespace std;int filetovector(string filename,vector& sevc){ ifstream infile(filename.c_str()); if(!infile) return 1;
2012-12-21 14:27:25 5513
原创 stream 文件 IO 点滴
很多时候较大数据量的文件 IO 总是成为瓶颈,为了提高效率,有时想要先将文件大块大块的读入再行处理。下面分析两种惯常的处理手法。1. 将文件一次性读入 string 中。貌似 std::getline 、 istream::getline 或是 operator> 等都不提供一次读到文件结尾的机制,只有 istreambuf_iterator 可以做到:ifstream in(
2012-12-21 14:24:13 831
原创 使用Windbg 调试分析代码 --从.cmdtree命令的积累开始
使用Windbg 调试分析代码 ---从.cmdtree命令的积累开始一提到windbg很多人心里就有些畏难情绪,也难怪,这东西虽然是神器,对一个新手来说使用起来确实有些不方便,而且命令太多,很难一下子都记住,最近发现一个好方法,分享出来,希望大家可以通过这个方法开个好头。使用windbg第一关就是要记住一堆的命令,其实老外也不会记住所有的
2012-12-18 13:25:08 1012
原创 MQ简介
MQ的基本概念:1) 队列管理器队列管理器是MQ系统中最上层的一个概念,由它为我们提供基于队列的消息服务。2) 消息在MQ中,我们把应用程序交由MQ传输的数据定义为消息,我们可以定义消息的内容并对消息进行广义的理解,比如:用户的各种类型的数据文件,某个应用向其它应用发出的处理请求等都可以作为消息。消息有两部分组成:消息描述符(Message Discription或Messag
2012-12-06 23:19:31 7127 3
原创 Select模型原理
转自:http://blog.csdn.net/yanheifeng715000/article/details/6592447Select模型原理利用select函数,判断套接字上是否存在数据,或者能否向一个套接字写入数据。目的是防止应用程序在套接字处于锁定模式时,调用recv(或send)从没有数据的套接字上接收数据,被迫进入阻塞状态。 select参数和返回值意义如下:i
2012-12-05 09:58:42 1817
彗星小助手
2011-11-15
HttpWatchPro
2011-11-10
计算机基础知识考试宝典
2011-09-22
Vc中BSTR,char和CString的转换
2007-10-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人