TITLE: Static data members of a private type PROBLEM: johnh@tt.com (John Hasselkus), 13 Nov 92 How do you define a static data member of a private type? For example: class A { private: enum FOO { FOO_1, FOO_2 }; static FOO foo; }; A::FOO A::foo; // <- Compiler won't let you use private types out here RESPONSE: steve@taumet.com (Steve Clamage) Vice Chair, ANSI C++ Committee, X3J16 You can't have a static member of a private type. Some compilers allow it, but the ARM is clear that it is illegal. You can have a private static member, but its type must accessible at file scope.