Let's say I have a library code
main.cpp, where are 3 classes implemented:
Inner2 are only being used in
main.cpp and they're not going to be used anywhere else.
On the other hand,
Outer class is intended to be used by users of my library, i.e. to be a part of API. I also don't want my users to use inner classes.
Is it a good way to solve this by having two headers -
Outer class will be declared and
main.h, where both inner classes will be declared?
Or is there any better way to approach this problem?