fork download
  1. #include <iostream>
  2.  
  3. class X {
  4. public:
  5. X &operator+=(int v) {
  6. value += v;
  7. return *this;
  8. }
  9.  
  10. int value = 0;
  11. };
  12.  
  13. // Uwaga: referencja w argumencie `x` ponizej nie ma zadnego sensu.
  14. // Wewnatrz funkcji i tak trzeba by wykonac kopie.
  15. X operator+(X x, int v) {
  16. return (x += v);
  17. }
  18.  
  19. int main() {
  20. X x;
  21.  
  22. X y = x + 10;
  23.  
  24. std::cout << y.value;
  25. return 0;
  26. }
Success #stdin #stdout 0s 2896KB
stdin
Standard input is empty
stdout
10