The difference is the "bool and the T", could you
please explain this?
Well the first function belongs to a larger template class, called Class (A poor name for a class by the way.). The second is a template function that is not part of an actual class.
The first snippet, the member function, compares the value passed into the function with a value held in the class and returns whether the two values are equal or not, a bool value.
The second, non-class function, compares the two values passed into the function and returns the higher value. Note that both of the parameters and the return value have the same type 'T'.