派生类和基类中的重载操作符不同



如果我在基类中重载operator*(float s)(并且我没有使其虚拟),然后在派生类中重载operator*(mat4 m),我可以合理地期望派生类将响应两个操作符重载吗?

我假定操作符重载就像任何其他函数一样:如果它不是虚函数,也没有被重写,那么除了派生类独有的该函数/操作符的任何其他重载之外,派生类还可以访问它。

当然,如果它不是虚拟的,但是派生类也定义了operator*(float s),那么只有当派生类通过Derived*指针访问时才会有效地调用它,否则,基类版本甚至会在派生类上调用,对吗?

我假定操作符重载就像任何其他函数一样:如果它不是虚函数,也没有被重写,那么除了派生类独有的该函数/操作符的任何其他重载之外,派生类还可以访问它。

与普通成员函数一样,派生类中的重载隐藏了原始成员函数,除非使用using

最新更新