Specifically when if comes to C++, could someone please explain to me why creating non-member functions is said to increase encapsulation for a class?
I kind of don't understand that, if I have a non-member non-friend function then anything I can manipulate for that class has to be in the public sector. And the way I see it, which I could be very very wrong here, is since that everything is already out in the open (public) there is no encapsulation of that class
It can increase encapsulation. That doesn't mean it will - it depends on how you do it.
The case where it will increase encapsulation is where the only things the world knows about your class is that it exists and that the non-member functions exist. Having non-member functions as your public interface means that users of your class don't need to know the definition of your class to use it. Sort of like how C's FILE API works - you're not supposed to actually know what the definition of a FILE structure is, and in fact most of the time you don't, so your only access to this structure is through the functions that manipulate it.