名前空間の中にある、クラスの中で
friendの宣言をしているだけで、その関数は名前空間の中で
宣言されてるってことなのでしょうか。

別の名前空間にある関数をfriendにするってこともできなくなるのでは?