'class' : cannot instantiate abstract class due to following members:
Code declares an instance of an abstract class or structure. One or more C4259 warnings follow for the abstract members.
You cannot instantiate a class or structure with one or more pure virtual functions. To instantiate objects of a derived class, the derived class must override each pure virtual function.
Example
class V { public: void virtual func() = 0; }; class A : public V {}; class B : public V { public: void func(); }; V v; // error, V is an abstract class A a; // error, A inherits func() as pure virtual B b; // OK, B defines func()