【发布时间】:2017-01-20 12:44:36
【问题描述】:
示例代码:
class Sum{
public:
void value(int val){_v = val;}
int add(int val){return _v + val;}
private:
int _v;
};
Sum sum;
sum.value(5);
int myResult = sum.add(10);
是否可以将sum.add(10) 设为默认值,这样我可以获得相同的结果:
int myArea = sum(10);
(我怀疑问题标题是错误的,也许是我找不到解决方案的原因。欢迎编辑。)
【问题讨论】:
-
这就是您可以覆盖运算符的内容。
+、-、+=、-=...所有这些算术运算符都可以被覆盖,因此您可以赋予它们用户定义的行为。此外,您可以覆盖函数调用运算符以获得所需的确切语法。