Вы не можете.Стандарт содержит следующий раздел ( §7.3.1.1 , C ++ 03):
Определение безымянного пространства имен ведет себя так, как если бы оно было заменено
namespace unique { /* empty body */ }
using namespace unique;
namespace unique { namespace-body }
, где все вхождения уникальные в единице перевода заменены одним и тем же идентификатором, и этот идентификатор отличается от всех других идентификаторов во всей программе.
Таким образом, выЯ не могу ссылаться на это уникальное имя.
Однако технически вы можете использовать что-то вроде следующего:
int i;
namespace helper {
namespace {
int i;
int j;
}
}
using namespace helper;
void f() {
j++; // works
i++; // still ambigous
::i++; // access to global namespace
helper::i++; // access to unnamed namespace
}