Question : How to access class due to 'cannot instantiate abstract class' error

This code in the cpp:

    LMObject pObj;
    MObject::MObject(LMAttrHolder(pObj));

Generates this error in the compiler:

error C2259: 'MObject' : cannot instantiate abstract class
          due to following members:
          'LMClassFactory MObject::GetFactory(void) const' : is abstract
           (244) : see declaration of 'MObject::GetFactory'
           'LMObject MObject::Duplicate(DUP_FLAGS)' : is abstract
           (262) : see declaration of 'MObject::Duplicate'
           'void MObject::Draw(HDC,DRAWFLAGS,const CRect *)' : is abstract
           (265) : see declaration of 'MObject::Draw'

These are clearly virtual in the header file, as are some of the base class (though not all of that base class). So how fix that error?

Answer : How to access class due to 'cannot instantiate abstract class' error

>> MObject::MObject (LMAttrHolder lpAttr)
>> {
>> }

If that is all the constructor does then I see no problem with the change you made and I am left wondering what the point of the original code was as it seems completely pointless. :)
Random Solutions  
 
programming4us programming4us