Topic: automatic selection of algorithm for abstract data type
Topic: function signature
Topic: interface type
Topic: object-oriented classes
Topic: object-oriented methods
Topic: types of object-oriented classes
Topic: generic operations and polymorphism
Topic: abstract data type
| |
Summary
An abstract or virtual function defines the argument types for a function but not its implementation. An abstract function removes the need for a case statement. Abstract functions define interface types and abstract classes. (cbb 4/01)
Subtopic: abstract function identifies parameter types
Quote: virtual functions identify the type of an object in a type-secure way
| Quote: virtual functions avoid the need for type tests and case switches. They take nearly the same space as a type field
| Quote: a virtual function defines an interface to yet-to-be-defined classes, and it depends on yet-to-be defined classes [»stroB_1991]
| Quote: use virtual function calls rather than run-time type inquiries even though the later may be easier and more efficient
| Subtopic: abstract functions need to define the expected behavior
Quote: when designing a class, it is important to specify the expected behavior of virtual functions
| Subtopic: abstract data types via abstract function
Quote: the object-oriented abstract type is a bigger building block than a module interface, procedure, statement, or instruction [»nelsG_1991]
| Quote: an abstract type is an interface defined by pure virtual functions and no data members; most operations are virtual function calls [»stroB_1991]
| Quote: an abstract type is implemented with concrete types
| Quote: an object implements an abstract data type with a private, mutable state and public operations on the state [»taivA4_1993]
| Subtopic: virtual members
Quote: a class may define virtual quantities for access from a super class; like call-by-name; compiler could check virtual specification [»dahlOJ_1967]
| Quote: a virtual field takes no space in a data record if it is not declared; greater flexibility in attribute referencing [»dahlOJ_1967]
|
Related Topics
Topic: automatic selection of algorithm for abstract data type (7 items)
Topic: function signature (21 items)
Topic: interface type (50 items)
Topic: object-oriented classes (67 items)
Topic: object-oriented methods (42 items)
Topic: types of object-oriented classes (18 items)
Topic: generic operations and polymorphism (67 items)
Topic: abstract data type (64 items)
|