|  | 
        A type X meets the Endpoint requirements if it satisfies the
        requirements of Destructible
        (C++Std [destructible]), DefaultConstructible
        (C++Std [defaultconstructible]), CopyConstructible
        (C++Std [copyconstructible]), and CopyAssignable
        (C++Std [copyassignable]), as well as the additional requirements listed
        below.
      
        The default constructor and move operations of the type X
        shall not exit via an exception.
      
        In the table below, a denotes
        a (possibly const) value of type X,
        and u denotes an identifier.
      
Table 14. Endpoint requirements
| expression | type | 
                  assertion/note | 
|---|---|---|
| 
                   | 
                  type meeting  | |
| 
                   | 
                   | 
        In the table below, a denotes
        a (possibly const) value of type X,
        b denotes a value of type
        X, and s
        denotes a (possibly const) value of a type that is convertible to size_t and denotes a size in bytes.
      
Table 15. Endpoint requirements for extensible implementations
| expression | type | 
                  assertion/note | 
|---|---|---|
| 
                   | 
                   | 
                  Returns a pointer suitable for passing as the address
                  argument to functions such as POSIX  | 
| 
                   | 
                   | 
                  Returns a pointer suitable for passing as the address
                  argument to functions such as POSIX  | 
| 
                   | 
                   | 
                  Returns a value suitable for passing as the address_len
                  argument to functions such as POSIX  | 
| 
                   | 
                  pre:  | |
| 
                   | 
                   | 
                  Returns a value suitable for passing as the address_len
                  argument to functions such as POSIX  |