例如:template
关键字template引入模板,参数由一对尖括号“<>”括起来,关键字class 表明这个参数代表一个类型。标识符elemType代表实际得参数名。
模板机制也支持面向对象得程序设计,类模板可以作为基类或派生类。每个派生类的实例化过程都会实例化相应的基类模板的实例。也可将函数定义为函数模板,函数调用时会根据类的类型产生适当的实例。
template
class Array{
public:
explicit Array(int size=DefaultArraySize);
Array(elemType *array,int array_size);
Array(const Array &rhs);
virtual ~Array() {delete [] ia;}
bool operator==(const Array&) const;
bool operator!=(const Array&) const;
Array& operator=(const Array&);
int size() const {return _size;}
virtual elemType& operator[](int index) {return ia[index];}
virtual void sort();
virtual elemType min() const;
virtual elmType max() const;
virtual int find(const elemType &value) const;
protected:
static const int DefaultArraySize =12;
int _size;
elemType *ia;
}
#include
#include "Array.h"
namespace std
int main(){
const int array_size=4;
Array
Array
Array
int ix;
for(ix=0;ix
da[ix]=ix*1.75;
ca[ix]=ix+'a';
}
for(ix=0;ix
return 0;
}
坏坏大少 于 2006-08-23 21:29:22发表:
顶~~~~~~~