考虑这段代码,我在其中定义了一个名为Thing
的类:
1 class Thing{
2 public:
3 int things;
4 int stuff;
5 };
6
7 int main(){
8 Thing foo, bar;
9 foo + bar;
10 return 0;
11 }
此问题涉及第9
行。尝试在不是+
或int
等对象之间应用float
运算符会引发错误,如预期的那样:
no match for 'operator+' in 'foo + bar'
所以这是我的问题。为了进行操作Thing
,我需要对Thing + Thing = valid output
的定义做些什么?
例如,foo + bar = foo.things + foo.stuff + bar.things + bar.stuff
。