【发布时间】:2019-04-19 15:12:10
【问题描述】:
我有一个 A 类
在模板类 B 中
template<class key>
class B
我想在 B 类中重载 A 的 == 运算符,因为我不希望它在类外被重载
我该怎么做?
我试过了:
1.
bool operator==(const key &a, const key &b)
编译结果:参数太多
2.
friend operator==(const key &a, const key &b)
当我尝试使用操作符时,编译结果:找不到操作符
【问题讨论】:
-
如何在私有命名空间中定义运算符,然后在
using中定义B的成员函数定义? -
@Quentin 想过这个解决方案,但我认为它不够优雅
标签: c++ templates overloading