我们可以重载 int 或 float 等内置类型的运算符吗?

问题描述 投票:0回答:3

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

int operator + (int , int);
c++ overloading
3个回答
29
投票

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


12
投票

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

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


1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.