#include
<iostream>
#include <stdlib.h>
using namespace std;
template <class T>
class A;
template <class T>
void display(const A<T> &a);
template <class T>
class A
{
friend void display<T>(const A<T> &a);
public:
A(const T &x):t(x)
{
}
private:
T t;
};
template <class T>
void display(const A<T> &a)
{
cout<<a.t<<endl;
}
int main(int argc, char *argv[])
{
A<int> a(5);
display(a);
system("pause");
return 0;
}