İçe aktarılan sembolleri ad alanının gövdesi (veya gövdeleri) dışında görünmeyen, using namespace
benzeri bir yapı var mı? Burada bu örnekte C++ harici olarak erişilemeden diğer ad alanından semboller kullanın
whatever
ve
other_namespace
her sembol de
Foo::<name_of_symbol>
erişilebilir olacak ... ve ben bunu engellemek için bir yol istiyorum.
namespace Foo {
using namespace whatever;
using namespace other_namespace;
// some definitions
}
tam bir örnek olarak, bu program geçerlidir. Eğer amaçlanan semantiklerle birlikte using namespace
'a bir alternatif mevcutsa ve kullanılsaydı, bu olmazdı.
namespace a {
int func(int x) {
return 10;
}
}
namespace b {
using namespace a;
}
namespace c {
int do_thing(int x) {
return b::func(57);
}
}
İşlev-kapsamlı 'using' bildirimleri? – Sneftel
@Sneftel Her işlev aynı ad alanı kümesini kullandığında, sonra da yinelenen –
olduğunu fark ettim. Ayrıca - 'namespace' yönergesini kullanarak bir .cpp dosyasına veya özel .h dosyasına Bu kod tüketmek için görünür değil. –