No, enum ClassA::foo { a, b, c }; Invalid syntax.
If you want to move the enumeration from the header and into the implementation file (.cpp), just do it. If you want to use an enumeration for the parameter types of class methods, then you cannot move it, so just leave it closed.
Roger Pate
source share