随笔分类 - C++
摘要:buildre pattern称建造者模式 Builder设计模式,提供一种封装机制来隔离出构成复杂对象的各个子对象的变化,从而保持系统中的相对稳定的将这些子对象组合在一起的算法不随着需求的改变而改变。 Separate the construction of a complex obje...
阅读全文
摘要:abstract factory pattern,抽象工厂模式 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态。 Abstract Factory模式存在的意义就是为了创建各系列的对象而存在的。相对Factory Method模式的解决“单个对象”的需求变化,Abstra...
阅读全文
摘要:factory mothed pattern,称工厂方法模式 首先我们看看Gof怎么定义工厂方法模式的: “Define an interface for creating an object, but let subclasses decide which class to instantiate...
阅读全文
摘要:singleton pattern,又称单件模式,或者单例模式。singleton要求类有且仅有一个实例,并给其他对象提供这一实例。 控制类实例仅有一个,办法有两个: 1.私有化构造函数与copy构造函数,使用一个函数静态变量 1 #include 2 class People{ 3 ...
阅读全文
摘要:大家可能对这个临时对象这个概念还不是很清楚,那么首先我们花一些时间来理解临时对象。首先看下面一端代码: 1 #include 2 void swap( int &a,int &b) 3 { 4 int temp; 5 temp=a; 6 a=b; 7 b=t...
阅读全文
摘要:C++继承可以是单一继承或多重继承,每一个继承连接可以是public,protected,private也可以是virtual或non-virtual。然后是各个成员函数选项可以是virtual或non-virtual或pure virtual。本文仅仅作出一些关键点的验证。 public继承,...
阅读全文
摘要:如果现在你做的C++项目(课题)包含的文件没有超过1000个,你可以选择略过此文,不过建议继续浏览。 如果你觉得重新编译文件的时间很短或者时间长一点无所谓,反正需要重新编译,那么你也可以选择略过此文,不过也建议浏览。 如果你想学习或者关心这块内容,那么此文必定会给你带来收获。 首先我不给出依存...
阅读全文
摘要:1、最好不要使用引用返回值 有同学在传递的参数的时候使用引用方式传递,避免了临时对象的创建,提高了效率,那么在返回值的时候能不能使用引用呢? 看如下代码 class Rational{ public: Raional( int numerato...
阅读全文
摘要:c++中编译器替我们完成了许多事情,我们可能不知道,但也可能习以为常。下面详细介绍 一、初始化与初始赋值 首先说说类的初始化与初始赋值之前的区别,这也许里面可能有我们不知道的事情。 其实类初始化与初始赋值还是有区别的。 1 class People{ 2 ...
阅读全文
摘要:1.尽量用类的非成员函数以及友元函数替换类的成员函数 例如一个类来模拟人People 1 class People{2 public:3 ...4 void Getup( );5 void Was...
阅读全文
摘要:首先说明invalid_argument是一个类(classinvalid_argument;),它的继承关系如下 exception-------->logic_error--------->invalid_argument invalid_argument原型是 1 class inval...
阅读全文
摘要:为什么这么说呢?或许很多程序员已经习惯在文件开始使用大量的#define语句。例如:这里程序文件开头有如下#define语句 #define N 10 #define PI 3.14 #define MAX 10000 ...
阅读全文
摘要:大多数园友可能对“#include”比较熟悉,因为我们写C/C++程序的时候都会写的字符串之一,但是它是具体怎么工作的?或者它的原理是什么呢?可能不太熟悉,也有可能没有去关心过。我们只关心程序能否正确运行,或者程序怎么实现等等一些问题。 这里笔者就为介绍下我们熟悉又不太熟悉的“#include”...
阅读全文
摘要:KMP算法是字符串处理算法的一种经典算法。字符串中的一些算法在C++中需要编程者自己实现,在C#中的话String类的功能及其强大,编程者自己调用该类一些功能完成字符串处理。那么可能就导致错过这些字符串基本的经典算法。而在字符串处理这些算法中,KMP算法可谓是经典算法。 那么首先看下面一个一般求...
阅读全文