Если я правильно понимаю ваш вопрос, вы можете создать шаблон operator ==
, чтобы выполнить то, что вы хотите:
template<int M1, int M2>
bool operator ==(Node<T,M1,M2> const& rhs) const
{
// whatever you want
}
Имейте в виду, это означает, что любой Node<T,N1,N2>
можно сравнить с любым произвольным Node<T,M1,M2>
,Только T
указано одинаково для аргументов lhs и rhs.В качестве альтернативы, если вы хотите получить гарантированный переворот только для аргумента, вы можете специализироваться, но я сомневаюсь, что вам это нужно.