(Проблема, которую я решаю, включает стороннюю библиотеку, которую я не могу изменить)
#include <list>
//Third party lib namespace
namespace foo
{
typedef int SomeType;
}
//my namespace
namespace mycompany
{
namespace groo
{
typedef std::list<foo::SomeType> SomeTypeList;
}
namespace foo
{
typedef std::list<foo::SomeType> SomeTypeList;
}
}
int main() { return 0; }
Попытка скомпилировать это приводит к ошибке:
error: 'SomeType' is not a member of 'mycompany::foo'
Доступ из groo
работает просто отлично.Как вы получаете доступ к мелководному foo
из mycompany::foo
?
(я сам отвечу на это, но подумал, что опубликую вопрос на случай, если у кого-то еще будет то же самое)