与えられた:
namespace One {
void foo(int x) {
munch(x + 1);
}
};
namespace Two {
// ... see later
}
...
void somewhere() {
using namespace Two;
foo(42);
...
次の2つのバリアントの間に違いはありますか?
a)
namespace Two {
void foo(int x) {
munch(x + 1);
}
};
およびb)
namespace Two {
using One::foo;
};
編集:(a)コードを複製することはかなり明らかですが、これは決して良い考えではありません。問題は、過負荷の解決などに関するものです。他の名前空間に他foo
のsまたはmunch
esがある場合はどうなりますか?