All the same. The ampersand (as a reference indicator) always appears after a type name. The fact that it sometimes appears before a variable name is incidental.
Your example shows a syntax that saves a little typing and maintenance.
Let's say we have a method defined as
1 2 3 4
T &T::operator+=(const T &operandB){
this->data+=operandB.data;
return *this;
}
We can declare this method as T &operator+=(const T &operandB);
or T &operator+=(const T &);
which will save us a little maintenance if we ever decide to change the parameter name, and also does a better job of hiding the implementation from the user.
But both mean the same. 'T &' means "reference to a T".
(Needless to say, the space between T and & is optional. That's just the way I like to write.)