这段程序会输出什么?

来自 运算符重载
C++23 入门 2分钟

这段程序会输出什么?

C++
#include <iostream>

class Counter {
    int value_;

public:
    explicit Counter(int value) : value_(value) {}

    Counter& operator+=(int amount) {
        value_ += amount;
        return *this;
    }

    friend Counter operator+(Counter left, int right) {
        left += right;
        return left;
    }

    int value() const { return value_; }
};

int main() {
    Counter original{4};
    Counter result = original + 3;
    std::cout << original.value() << ' ' << result.value() << '\n';
}
在试验场中打开
报告错误