すいません、微妙に例を間違えました。

class Foo{};
namespace ns{
ostream &operator << (ostream &o, Foo &foo) { ... }
}
int main(){
std::cout << Foo(); // using namespace ns; しないと使えないよー
}

Fooとoperatorがns内に有ればOKなんですが、
Fooがns外部にあると、コンパイルエラーになるとです。
std::cout ns::<< Foo();
とかやっても駄目だし、using namespace使う以外に方法無いんでしょうか?