Numeric type requirements

The complex and valarray components are parameterized by the type of information they contain and manipulate.

A C++ program shall instantiate these components only with a type TYPE that satisfies the following requirements:

Tis not an abstract class (it has no pure virtual member functions);

or

  TYPE&    TYPE::operator=(TYPE)
  

If an operation on TYPE throws an exception then the effects are undefined.

Specific classes member functions or general functions may have other restrictions.