我正在尝试制作一个允许我将整数添加到我的一个类的运算符,但我遇到了如下问题。
struct Base
{
//Will have value of zero
};
struct Derived : public Base
{
int value_;
};
int & operator+=(int & num, Base & b);
int & operator+=(int & num, Derived & d);
随着运营商的实施
int & operator+=(int & num, Base & b)
{
return num;
}
int & operator+=(int & num, Derived & d)
{
num += d.value_;
return num;
}
所以我有一个向量,我试图遍历它并将所有值添加到一个整数。但是,即使是 Derived 类型的那些也不会改变总和。
如何使运算符重载多态?