c++重载运算符只能重载类的运算吗? 不可以随意重载定义运算符吗? 可以的话给个例子。

2024-12-31 22:25:32
推荐回答(2个)
回答1:

类或者结构都是可以的。允许重载的运算符你就可以重载啊。随意重载不是说不可以,是不好,重载了有意义才对编程有帮助不是!如:
bool vector<_T, _A>::operator== (const vector<_T,_A>& __x,
const vector<_T,_A>& __y)
{
return __x.size() == __y.size()
&& equal(__x.begin(), __x.end(), __y.begin());
}

回答2:

重载运算符的参数中(不管几目的运算符),必须要有一个参数是类或结构的引用或实例,不能所有参数都是基本变量,也不能所有参数都是指针