我们可以为内置类型(如int或float)重载运算符吗?

时间:2013-07-30 08:08:52

标签: c++ overloading

我们可以在c ++中声明这样的函数:

int operator + (int , int);

您的回答将不胜感激!

谢谢

3 个答案:

答案 0 :(得分:23)

您无法重新定义内置运算符。运算符重载 旨在让您扩展语言,而不是改变 它。至少一个重载运算符的参数 必须是用户定义的类型(类或枚举类型)或引用 到用户定义的类型。

答案 1 :(得分:11)

是:您可以将整数和浮点数传递给重载函数

否:当内置类型位于表达式的两侧时,不能重载/覆盖内置类型的运算符。

答案 2 :(得分:1)

不,我们不能重载整数或浮点类型,因为重载意味着更改现有运算符的工作或使它们与对象一起工作int是单个成员而不是对象。