This is another case of interface declaration. If you have virtuals, you first declare pure interface. And you have several implementations of the interface. It works well in c++.
I talk about the case when I plan to implement some class later, just one class, without hierarchy. I want to declare his interface, write and compile tests even before the class is fully defined. Today I have either to use PIMPL or declare unnecessery interface that is never reused.
I just propose a simpler alternative of interface declaration. The virtual methods are not there, we do not need it for this case.