I want to create an abstract class with a pure virtual private method but I can't implement that in my concrete class. My option is to make that pure virtual private method to protected but in my concrete class I want to make it only a private. Like,
class IFoo
{
public:
IFoo(){}
virtual ~IFoo(){}
protected:
virtual void fooMethod() = 0;
};
class Foo : public IFoo
{
public:
Foo(){}
virtual ~Foo(){}
private:
virtual void fooMethod() {}
};
Is there any implication doing this? Or this is just fine?
Thanks!