重载前缀运算符+

Overloading prefix operator+

我正在尝试用 C++ 创建自定义类型

我正在尝试重载 + 运算符

class MyClass {
  ....
  int operator+(int i) {
    ....
  }
}

适用于

int main() {
  MyClass MC;
  count << MC+1;
}

如何让它与 1+MC

一起使用

这就是我所做的。

^ cat Foo.cpp
#include <iostream>

class MyClass {
public:
    int value = 5;
};

int operator+(const int value1, const MyClass &value2) { return value1 + value2.value; }

int main() {
    MyClass myClass;
    int newValue = 1 + myClass;

    std::cout << newValue << std::endl;
}

^ make Foo
g++     Foo.cpp   -o Foo
^ Foo
6

你会看到我为它做了一个免费的功能。