Method do_something_impl is private in the base class and public in the derived class foo.
|
class foo : public base<foo> |
|
{ |
|
public: |
|
void do_something_impl() |
|
{ |
|
// Derived implementation |
|
} |
|
}; |
For consistency, make do_something_impl private.
class foo : public base<foo>
{
friend class base<foo>;
private:
void do_something_impl()
{
// Derived implementation
}
};