Les opérateurs de surcharge sont une fonction de membre ou une fonction de non-membre (ami)?

Je suis en train de créer une classe utilitaire qui ont opérateurs surchargés. Quels sont les avantages et les inconvénients de faire de leur membre ou non-membre (friend) fonctions? Ou est-il question? Peut-être qu'il est préférable pour cela?

source d'informationauteur Seth