头文件:
#ifndef HEAD_H
#define HEAD_H
template<typename T>
class A
{
public:
T add(T x, T y);
T multiply(T x, T y);
};
#endif
源程序:
main.app
#include<iostream>
using namespace std;
int main()
{
A<int> x;
A<float> y;
cout << "7+8=" << x.add(7,8) << endl;
cout << "9.3+3.4=" << y.add(9.3, 3.4) << endl;
cout << "7*8=" << x.multiply(7, 8) << endl;
cout << "9.3*3.4=" << y.multiply(9.3, 3.4) << endl;
system("pause");
return 0;
}
source.app
#include<iostream>
#include"HEAD.h"
#include<stdlib.h>
#include<iomanip>
using namespace std;
template<typename T>
T A<T>::add(T x,T y)
{
return x + y;
}
template<typename T>
T A<T>::multiply(T x, T y)
{
return x*y;
}