C/C++ Compiler (cl.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
C2259
                                             Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
     Compiler error C2259
 
     'class' : illegal attempt to instantiate abstract class
 
     An object of the specified abstract class or structure was
     declared.
 
     A class (or structure) with one or more pure virtual functions
     cannot be instantiated. Each pure virtual function must be
     overridden in a derived class before objects of the derived
     class can be instantiated.
 
     The following is an example of this error:
 
          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()
                                    -♦-