9
我试图访问具有不同模板参数的模板类的受保护变量。与模板参数的朋友声明是给下面的错误:模板友情
多个模板参数列表不允许
我的代码是
template<class O_, class P_>
class MyClass {
//multiple template parameter lists are not allowed
template<class R_> friend class MyClass<R_, P_>
//syntax error: template<
friend template<class R_> class MyClass<R_, P_>
public:
template<class R_>
ACopyConstructor(MyClass<R_, P_> &myclass) :
SomeVariable(myclass.SomeVariable)
{ }
protected:
O_ SomeVariable;
};
如果我删除保护和友元声明它的工作原理。
MyClass是它自己的朋友吗? – AraK 2009-09-22 08:22:24
MyClass与MyClass 不是同一个类,因此它无法访问其受保护的变量。 –
2009-09-22 08:23:49
AraK没有这样的MyClass。 – 2009-09-22 08:25:00