Reputation: 2129
I am having three classes all of them are from different namespaces as shown below:
classA.h
namespace outer
{
namespace inner
{
class ClassA
{
....
};
}
}
classB.h
namespace inner
{
class ClassB
{
...
};
}
classC.h
#include <classB.h>
namespace outer
{
namespace inner2
{
using inner::ClassB; // error here, says outer::inner2::ClassB has not been declared.
class ClassC
{
....
};
}
}
I am stuck at this please help me to solve this issue.
Upvotes: 0
Views: 167
Reputation: 258548
You need
using ::inner::ClassB;
because in namespace outer
, you have 2 options for inner
::inner
- global namespace::outer::inner
- outer
namespaceBy default, using inner::ClassB;
will try to import ClassB
from outer::inner
.
Upvotes: 9