В чем смысл частной чистой виртуальной функции?

В заголовочном файле я наткнулся на следующий код: class Engine { public: void SetState( int var, bool val ); { SetStateBool( int var, bool val ); } void SetState( int var, int val ); { SetStateInt( int var, int val ); } private: virtual void SetStateBool(int var, bool val ) = 0; virtual void...