我知道如何重载operator + =如果我正在使用类C++增量++操作符重载
class temp
{
public:
int i;
temp(){ i = 10; }
int operator+=(int k)
{
return i+=k;
}
};
int main()
{
temp var;
var += 67;
cout << var.i;
return 0;
}
但为什么不能我创建了一个重载+ =功能基本数据类型
int operator+=(int v, int h)
{
return v += (2*h);
}
int main()
{
int var = 10;
var += 67;
cout << i;
return 0;
}
我得到的错误,当我编译上述重载函数。
[您无法在C++中更改内置类型的运算符的含义,因此只能针对用户定义的类型重载运算符。也就是说,至少有一个操作数必须是用户定义的类型。](http://stackoverflow.com/a/4421715/445976) – Blastfurnace