On Friday, 11 May 2018 at 16:51:30 UTC, Mike Parker wrote:
I don't see how putting the function outside or inside the class declaration makes any difference.
Being inside the class takes up a vtable slot and is inheritable. In terms of encapsulation there is no difference.