diff options
author | codesoap <codesoap@mailbox.org> | 2019-06-30 12:40:47 +0200 |
---|---|---|
committer | codesoap <codesoap@mailbox.org> | 2019-06-30 12:40:47 +0200 |
commit | 696cbc66bed9971d3152cd9fd24e268caf3aec99 (patch) | |
tree | d40a298db452e62b6a946399bb548ac8a7f60231 | |
parent | 84cb0e88995b6d2f04a119cc25a695a33e1cbf9f (diff) |
c++: Add more explanation to the += overloading example
-rw-r--r-- | c++.html.markdown | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/c++.html.markdown b/c++.html.markdown index 80ad3a6c..fc9f6ce2 100644 --- a/c++.html.markdown +++ b/c++.html.markdown @@ -553,10 +553,14 @@ Point Point::operator+(const Point& rhs) const return Point(x + rhs.x, y + rhs.y); } +// It's good practice to return a reference to the leftmost variable of +// an assignment. `(a += b) == c` will work this way. Point& Point::operator+=(const Point& rhs) { x += rhs.x; y += rhs.y; + + // `this` is a pointer to the object, on which a method is called. return *this; } |