36 lines
604 B
C++
36 lines
604 B
C++
// 模版类与友元
|
||
#include <iostream>
|
||
#include <cstring>
|
||
#include <cstdlib>
|
||
|
||
using namespace std;
|
||
|
||
template <typename T>
|
||
class A
|
||
{
|
||
// 内部实现的友元函数(全局性的友元函数,类的外部可以直接访问 showIn(x) ,不需要类对象调用 a.showIn())
|
||
// 接收当前模版类的引用时,可以指定当前模版类的类型
|
||
friend void showIn(A<T> &a)
|
||
{
|
||
cout << a.item << endl;
|
||
}
|
||
|
||
private:
|
||
T item;
|
||
|
||
public:
|
||
A(T item)
|
||
{
|
||
this->item = item;
|
||
}
|
||
|
||
// public:
|
||
};
|
||
|
||
int main()
|
||
{
|
||
A<int> a(20);
|
||
showIn(a);
|
||
return 0;
|
||
}
|