다른 템플릿 매개 변수를 사용하여 템플릿 클래스의 보호 된 변수에 액세스하려고합니다. 템플릿 매개 변수와 친구의 선언은 다음과 같은 오류를주고있다 : 나는 그것이 작동 보호와 친구 선언을 제거하면템플릿 우정
여러 템플릿 매개 변수 목록이 허용되지 않습니다
내 코드
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
MyClass는 MyClass 와 같은 클래스가 아니므로 보호 된 변수에 액세스 할 수 없습니다. –
AraK에는 'MyClass'가 없습니다. –