Когда вы находитесь внутри пространства имен NS
, вам обычно (1) не требуется указывать имена функций, классов или других объектов, которые находятся в пространстве имен NS
.Дано:
namespace NS {
class B { };
}
следующие два определения D
одинаковы:
namespace NS {
class D : public NS::B { };
}
и:
namespace NS {
class D : public B { };
}
(1) Аргумент-Зависимый поиск (ADL) может вызвать некоторые ужасные проблемы , особенно при использовании шаблонов, и для их устранения вам может потребоваться указать имена.