如何让模板类跟友元模板函数一一对应起来

有时候我们需要让模板类的某个实例跟对应的友元函数的对应实例关联起来,对于这种情况,我们可以用<>让其进行关联,如下

template<typename T>
void Test(T t);//前置声明

template<typename T>
struct C
{
	friend void Test<>(T);//注意此尖括号
private:
	int i;
};

template<typename T>
void Test(T t)
{
	C<int> c;
	c.i=10;
}
int main()
{
	int i=10;
	Test(i);
	return 0;
}

原文地址:https://www.cnblogs.com/SammyLan/p/1880025.html