In C++, the name of a nested class is local to its enclosing class. In ISO/ANSI C, the name of the nested structure belongs to the same scope as the name of the outermost enclosing structure.
Nested Classes.