[求助]同时使用模板和友元
若同时使用模板和友元,是不是友元声明和定义不能分开?谢谢指教!
应该不是的吧,只要把函数实现部分写在main文件或者头文件中就可以了。
应该不是的吧,只要把函数实现部分写在main文件或者头文件中就可以了。
可以的,应该是你的书写有问题,把你的那部分代码帖上来看看
我给你举个例子吧~!
template<class T>
class MyClass
{
T a;
friend void print(MyClass<T>& mc);
public:
MyClass():a(0){}
};
#include <iostream>
using namespace std;
void main()
{
MyClass mc;
print(mc);
}
template<class T>void print(MyClass<T>& mc)
{
cout<<mc.a<<endl;
}
我还没试,你可以试下,应该是没问题的