C++之面向对象
我们知道C++是C语言的升级版,C++保留了C语言原有的所有优点,并增加了面向对象(OO)的机制,C++最重要的一个概念就是“类”,有了类就有了面向对象的程序设计(OOP),类(class)是C++的核心。而所谓面向对象,则是指类和类之间的关系!
对于类(class)的使用又分为两种——C++基于对象和C++面向对象。所谓C++基于对象是指,程序设计中只是用来单一的类(单一的类又分为:不带指针的类和带指针的类);而所谓C++面向对象则是类(class)中涉及了类的复合、委托、继承。
复合(composition 表示 has-a)
类的复合可以给理解成,类A、类B两个类,类A中含有类B;并且类A可以使用类B的部分成员,也可以使用类B的部分成员【或者理解成我(类A)里面有另外一种东西(类B)】。
template< class T , class sequence = deque<T> >
class queue{
...
protected:
sequeue c;
public:
//以下完全利用对象 c 的操作函数来实现
bool empty() const { return c.empty(); }
size_type size() const { return c.size(); }
reference front(0) { return c.front(); }
reference back() { return c.back(); }
//deque(双端队列)是两端可进出,queue(队列FIFO先进先出)是末端进前端出
void push(const value_type &x ){ c.push_back(x); }
void pop(){ c.pop_front(); }
};
其中对于templa