上一页 1 2 3 4 5 6 7 8 ··· 13 下一页
摘要: 1、 可调用对象 在C++中,有“可调用对象”这么个概念,那么什么是调用对象呢?有哪些情况?我们来看看: 函数指针; 具有operator()成员函数的类对象(仿函数); 可以被转换为函数指针的类对象; 类成员(函数)指针。 我们来看代码: 上述的对象都是可调用对象,这些对象的类型统称为“可调用类型 阅读全文
posted @ 2017-10-12 21:56 Memset 阅读(2004) 评论(0) 推荐(0) 编辑
摘要: 1、 for循环的新用法 在C++98/03中,通过for循环对一个容器进行遍历,一般有两种方法,常规的for循环,或者使用<algorithm>中的for_each方法。 for循环遍历: for_each方法: for_each相比一般的for循环,只需关注容器元素的类型,但是都是基于范围的循环 阅读全文
posted @ 2017-10-12 21:39 Memset 阅读(3344) 评论(0) 推荐(1) 编辑
摘要: 1、 C++98/03初始化 我们先来总结一下C++98/03的各种不同的初始化情况: 这些不同的初始化方法都有各自的适用范围和方法,但是种类繁多的方法却没有一种可以通用的。所以C++11提出了初始化列表的方法来解决通用问题。 2、 统一初始化方法 其实C++98/03中已经存在初始化列表的方法,只 阅读全文
posted @ 2017-10-10 22:57 Memset 阅读(3720) 评论(1) 推荐(0) 编辑
摘要: 1、 右尖括号 我们在C++98/03中使用泛型编程的时候,经常遇到“>>”被当作右移操作符,而不是模板参数的结尾。假如我们有如下代码: 使用C++98/03的时候会出现如下错误: 意思就是vector<Foo<int>>的写法不支持,我们不得不改成vector<Foo<int> >,”>>”之间有 阅读全文
posted @ 2017-10-10 22:40 Memset 阅读(1016) 评论(0) 推荐(0) 编辑
摘要: 1、 概述 C++11里面引入了auto和decltype关键字来实现类型推导,通过这两个关键字不仅能方便的获取复杂的类型,还能简化书写,提高编码效率。 2、 auto 2.1 auto关键字的新定义 auto关键字并不是一个全新的关键字,早在旧标准中就已经有定义:“具有自动储存期的局部变量”,不过 阅读全文
posted @ 2017-10-10 22:29 Memset 阅读(1235) 评论(2) 推荐(1) 编辑
摘要: 1、概述 我们讲了这么多的设计模式,大家有没有发觉在很多的模式中有些角色是不干活的?它们只是充当黔首作用,你有问题,找我,但我不处理,我让其他人处理。最典型的就是代理模式了,代理角色接收请求然后传递到被代理角色处理。门面模式也是一样,门面角色的任务就是把请求转发到子系统。类似这种结构的模式还有很多, 阅读全文
posted @ 2017-09-05 23:28 Memset 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 1、概述 门面模式为复杂的子系统提供一个统一的访问界面,它定义的是一个高层接口,该接口使得子系统更加容易使用,避免外部模块深入到子系统内部而产生与子系统内部细节耦合的问题。中介者模式使用一个中介对象来封装一系列同事对象的交互行为,它使各对象之间不再显式地引用,从而使其耦合松散,建立一个可扩展的应用架 阅读全文
posted @ 2017-09-05 22:56 Memset 阅读(1709) 评论(0) 推荐(1) 编辑
摘要: 1、概述 我们先来看两种模式的通用类图。 两者之间确实很相似。如果把策略模式的环境角色变更为一个抽象类加一个实现类,或者桥梁模式的抽象角色未实现,只有修正抽象化角色,想想看,这两个类图有什么地方不一样?完全一样!正是由于类似场景的存在才导致了两者在实际应用中经常混淆的情况发生,我们来举例说明两者有何 阅读全文
posted @ 2017-09-05 22:25 Memset 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 1、概述 为什么要把观察者模式和责任链模式放在一起对比呢?看起来这两个模式没有太多的相似性,真没有吗?回答是有。我们在观察者模式中也提到了触发链(也叫做观察者链)的问题,一个具体的角色既可以是观察者,也可以是被观察者,这样就形成了一个观察者链。这与责任链模式非常类似,它们都实现了事务的链条化处理,比 阅读全文
posted @ 2017-09-04 22:26 Memset 阅读(964) 评论(0) 推荐(0) 编辑
摘要: 1、概述 行为类设计模式中,状态模式和策略模式是亲兄弟,两者非常相似,我们先看看两者的通用类图,把两者放在一起比较一下。 策略模式(左)和状态模式(右)的通用类图。 两个类图非常相似,都是通过Context类封装一个具体的行为,都提供了一个封装的方法,是高扩展性的设计模式。但根据两者的定义,我们发现 阅读全文
posted @ 2017-09-04 21:38 Memset 阅读(952) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 13 下一页