class definition question

Hello everybody,

I am skimming through an open source project and I encountered a c++ construct which I can't quite figure out. Basically the class hierarchy is the following:

class A
{
A();
~A();
...
};

class A::A_Impl
{
A_Impl()
...
};

In the class definition of A_Impl, what does A::A_Impl imply? Am I defining my class A_Impl within the namespace of A? Does this mean the I have access to the members such as in a friend class? It this equivalent to defining the class A_Impl within class A? A_Impl is not deriving from A...

It would be great is someone could explain this pattern to me and in which cases it is used.

thank you all

Thomas
Topic archived. No new replies allowed.