class B;
class A
{ public:
void f( B b);
};
class B
{ public:
void g(A,a);
};
模板是C++支持參數化的工具
某些數據成員,某些成員函數的參數,返回值取任意類型
模板<模板參數列表> 對象名1,對象名2,……對象名N;
template <class T>
class Store
{ public:
store(void);
T getElem(void);
void putElem(T x);
private:
T item;
int haveValue;
};
template <class T>
T store<T>:: getElem(void)
{ if(haveValue==0)
cout<<"no item present!"<<endl;
exit(1);}
returen item;
}
template <class T>
void Store<T>::PutElem(T x)
{ HaveValue++;
item=X;
}
class A
{ public:
void f( B b);
};
class B
{ public:
void g(A,a);
};
模板是C++支持參數化的工具
某些數據成員,某些成員函數的參數,返回值取任意類型
模板<模板參數列表> 對象名1,對象名2,……對象名N;
template <class T>
class Store
{ public:
store(void);
T getElem(void);
void putElem(T x);
private:
T item;
int haveValue;
};
template <class T>
T store<T>:: getElem(void)
{ if(haveValue==0)
cout<<"no item present!"<<endl;
exit(1);}
returen item;
}
template <class T>
void Store<T>::PutElem(T x)
{ HaveValue++;
item=X;
}