class MatrixMovie
{
private:
enum {Matrix, MatrixReloaded, MatrixRevolutions} value_;
public:
// member functions and overloaded operators...
};
enum {Matrix, MatrixReloaded, MatrixRevolutions}; // duplicate
// You may use either scoped or unscoped syntax:
MatrixMovie mm=MatrixMovie::Matrix;
MatrixMovie mm=Matrix;