摘要:
模式动机:对于系统中的某些类而言,确保只有一个实例运行很重要,例如一个系统只能有一个计时器或者ID生成器。模式定义(Singleton Pattern):确保一个类只有一个实例,并且该类自己负责创建它自己的唯一实例,而且还必须可以向系统提供这个实例。模式结构图:模式分析:单例类拥有一个私有构造函数,... 阅读全文
摘要:
模式动机:在软件系统中,有些对象的创建过程非常复杂,但是又需要频繁创建,这时候需要提供一个原型对象,使用时只需要复制这个原型对象就可以了。模式定义(Prototype Pattern):使用原型实例指定创建对象的类型,然后通过复制原型对象来创建新对象。模式结构图:模式代码:bt_原型模式.h: 1 ... 阅读全文
摘要:
模式动机:一个对象由若干部件组成,而组合这些部件的过程比较复杂,因此可以把这个组合工作交给建造者来完成,建造这返回给客户的是一个组装好的对象。模式定义(Builder Pattern):将一个复杂对象的构建与表示分离开来,使得同样的构建过程可以创建不同的表示形式。模式结构图:其中包含抽象建造者Bui... 阅读全文
摘要:
如下为一个有理数类,其中包含一个用来计算乘积的函数: 1 #include 2 3 using namespace std; 4 5 class Rational 6 { 7 public: 8 Rational(int numerator = 0, int denominator =... 阅读全文
摘要:
缺省情况下,C++中函数参数的传递方式为by-value。即函数都是以实际参数的副本进行传递,而函数返回的也是一个副本。考虑如下实例程序: 1 #include 2 3 class Person 4 { 5 public: 6 Person(){ cout 2 3 using nam... 阅读全文