answersLogoWhite

0

If a class is intended to be used purely as a base class then it must have one or more pure-virtual functions (a function that may or may not have an implementation). Such a class is regarded as being an abstract base class because no instances of the class can be instantiated other than through derivation, and the derivative must provide an implementation or it too becomes an abstract base class. The abstract base class need not declare a pure-virtual method if it inherits one or more pure-virtual methods from another base class but does not provide a complete implementation. Only classes that provide a complete implementation can actually be instantiated. Implementations may be inherited from lower base classes other than the one that declared the function pure-virtual in the first place. Once a derivative implements a pure-virtual function, that implementation may be inherited by subsequent derivatives.

If the base class may be instantiated in its own right then it must not declare any pure-virtual methods, nor must it inherit any pure-virtual methods that have no implementations. In this case the base class may be derived from, but doesn't have to be derived from, whereas an abstract base class must be derived from.

User Avatar

Wiki User

12y ago

What else can I help you with?

Related Questions

What is a super class in terms of object oriented programming?

A superclass, also referred to as a parent class, is a class what which other classes are derived from. These derived classes are known as either subclasses or child classes.


What other classes can mages turn into on dragonfable?

You can turn into any of the other class (bar the other base classes, and base class Dragon versions)


What is the difference between structure and class with example?

Structures are public by default whereas classes are private by default. Other than that they are exactly the same. struct s { int num; // s.num is accessible outside of the structure }; class c { int num; // c.num is only accessible to the class itself. };


When do you use inner classes?

You use inner classes when you know you'll never need to access that class from anywhere else. A common use of this is in a linked list implementation: public class LinkedList { private class LinkedListNode { } } There's no reason for any other class to have access to your node class, so it should be an inner class.


What is hierarchal inheritance?

Hierarchical inheritance is a type of inheritance in object-oriented programming where classes are organized in a hierarchical structure. It means that a derived class can inherit attributes and methods from a base or parent class, and it can further be inherited by other classes. This allows for code reuse and promotes modularity in the program.


Which class includes all the others?

Super class in object oriented programming


How many failed classes to get held back?

All of them; try not to.


Final classes in java?

A class declared as final means that no other class can inherit from it.


What is the meaning of 'back-to-back classes'?

It means you have one class straight after the other.


Which type of simple machine has three different classes?

The lever is a simple machine that has three different classes: first class, second class, and third class. These classes are based on the arrangement of the effort, load, and fulcrum in relation to each other.


What are wrapped classes?

Wrapped classes are wrapped by Visible ones, which means wrapped ones should be invisible. Adapter Pattern is very closely related to wrapper, because it comes with 2 different flavors: object wrapper and class wrapper. There is also another way to define "wrapped" classes: a private class defined within another class. For example: class TheWrapper { private BeingWrapped _internal; } class TheVisibleOne { private class WrappedClass { } // this class is only accessible in TheVisibleOne } BeingWrapped and WrappedClass are the ones being wrapped/hide by other classes.


How do you unequip a class without equipping other classes on aqworlds?

there is no way to do this