A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://timsong-cpp.github.io/cppwp/n4659/nullablepointer.requirements below:

[nullablepointer.requirements]

20 Library introduction [library] 20.5 Library-wide requirements [requirements] 20.5.3 Requirements on types and expressions [utility.requirements] 20.5.3.3 NullablePointer requirements [nullablepointer.requirements]

A NullablePointer type is a pointer-like type that supports null values. A type P meets the requirements of NullablePointer if:

A value-initialized object of type P produces the null value of the type. The null value shall be equivalent only to itself. A default-initialized object of type P may have an indeterminate value. [Note: Operations involving indeterminate values may cause undefined behavior. end note]

No operation which is part of the NullablePointer requirements shall exit via an exception.

In Table 28, u denotes an identifier, t denotes a non-const lvalue of type P, a and b denote values of type (possibly const) P, and np denotes a value of type (possibly const) std​::​nullptr_­t.

Table

28

NullablePointer

requirements


Expression Return type Operational semantics P u(np);
Postconditions: u == nullptr P u = np; P(np) Postconditions: P(np) == nullptr t = np P& Postconditions: t == nullptr a != b contextually convertible to bool !(a == b) a == np contextually convertible to bool a == P() np == a a != np contextually convertible to bool !(a == np) np != a

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4