我们可以使用运算符重载来改变负的行为[重复]

问题描述 投票:-1回答:2

这个问题在这里已有答案:

是否有可能使用运算符重载来改变C ++中整数的减运算符的行为?

c++ overloading operator-keyword
2个回答
1
投票

没有!如果要重载运算符,则运算符的参数必须至少包含一个用户定义的类型。例如,在这种情况下,您可以为整数和类重载减号。


1
投票

不,您不能为自己的内部数据类型重载您自己的运算符。


但是,您可以创建自己的class / struct来表示整数类型并重载operator-()

struct MyInt {
    int i;

    int operator-() { return +i; }
};
© www.soinside.com 2019 - 2024. All rights reserved.