(ref.doc)ARM

Next PeopleWare Prev: CPS Up: Top

[ARM]
The Annotated C++ Reference Manual
Margaret Ellis and Bjarne Stroustrup
Addison-Wesley 1990
ISBN 0-201-51459-1

Section 3.3, p 17 Program and linkage
A name of file scope that is explicitely declared inline is local to
its translation unit.

Section 3.4 p 19
Keywords: non-local, static, initialisation
The initialization of nonlocal static objects (ยง3.5) in a translation
unit is done before the first use of any function or object defined in
that translation unit.
Such initializations may be done before the first statement of main()
or deferred to any point in time before the first use of a function or
object defined in that translation unit.


Section 9.4, p 180
Static members of a local class have no linkage and cannot be defined
outside the class declaration. It follows that a local class cannot
have static data members.

Static members of a global class are initialized exactly like global
objects and only in file scope.

Static members obey the usual class member access rules except that
they can be initialized (in file scope).


Section 11.5, p 253

A friend or a member function of a derived class can access a
protected static member of a base class. A friend or a member function
of a derived class can access a protected nonstatic member of one of
its base classes only through a pointer to, reference to, or object of
the derived class (or any class derived from that class). 


Section 15.2c, p 357
Keywords: exception, temporary, reference
In the comment of the example:
  "Here the reference _oo_ will refer to a copy of _dummy_. It cannot
  refer to the automatic storage of function _g()_ from which control
  is returned by _throw_. The copy of the expression created by
  _throw_, however, will persist until exit from the exception
  handler."