Previous | Table of Contents | Next |
The interface header consists of three elements:
1. An optional modifier specifying if the interface is an abstract interface.
2. The interface name. The name must be preceded by the keyword interface, and consists of an identifier that names the interface.
3. An optional inheritance specification. The inheritance specification is described in the next section.
The <identifier> that names an interface defines a legal type name. Such a type name may be used anywhere an <identifier>
is legal in the grammar, subject to semantic constraints as described in the following sections. Since one can only hold references
to an object, the meaning of a parameter or structure member, which is an interface type is as a reference to an object supporting
that interface. Each language binding describes how the programmer must represent such interface references.
Abstract interfaces have slightly different rules and semantics from “regular?
interfaces, as described in Section 3.8.6, “Abstract Interface,? on page 3-26. They also
follow different language mapping rules.
Local interfaces have slightly different rules and semantics from “regular? interfaces,
as described in Section 3.8.7, “Local Interface,? on page 3-26. They also follow
different language mapping rules.