클래스 템플릿에서 operator= 함수를 프렌드로 지정해 사용하려 합니다. 그런데 operator= 함수를 전역에서 템플릿으로 만들면 계속 컴파일 에러가 뜹니다.
template
T1& operator=(T1& left, T2& right);
template
struct MyPair {
friend MyPair& operator=(MyPair& left,MyPair& right);
};
template
MyPair& MyPair::operator=(MyPair& left,MyPair& right) {;
//정의합니다.
return left;
}
컴파일 하면 operator= 함수가 비정적멤버함수여야 한다는 에러메지시 출력됩니다.