9
나는 두 개의 구조체가 :C++ : 상속과 오버로드 연산자
template <typename T>
struct Odp
{
T m_t;
T operator=(const T rhs)
{
return m_t = rhs;
}
};
struct Ftw : public Odp<int>
{
bool operator==(const Ftw& rhs)
{
return m_t == rhs.m_t;
}
};
내가 좋아하는 것을 컴파일하려면 다음
int main()
{
Odp<int> odp;
odp = 2;
Ftw f;
f = 2; // C2679: no operator could be found
}
이 일을 어떤 방법이 있나요, 아니면이를 정의해야합니다 연산자가
Ftw
도 마찬가지입니까?
보통'연산자 ='const를 참조 매개 변수를 ... 그것은'변경하는 것이 더 나은 것 T 연산자 = T 연산자 ='로 (const를 T 우)'(CONST : 당신은 사용하여 선언하여이를 번복 할 수 T & rhs)' – a1ex07