>>724
>> そのメンバ変数shapeが表すものは?
そのクラスの形

enum ShapeID { ShapeID_Point, ShapeID_Sphere, ShapeID_Box, ... }

class Shape
{
private:
 ShapeID id;
 ...
};

class Hoge
{
private:
 Shape shape;
};