| Technical Specification | ||||
| Filesystem library(filesystem TS) | ||||
| Library fundamentals(library fundamentals TS) | ||||
| Library fundamentals 2(library fundamentals TS v2) | ||||
| Library fundamentals 3(library fundamentals TS v3) | ||||
| Extensions for parallelism(parallelism TS) | ||||
| Extensions for parallelism 2(parallelism TS v2) | ||||
| Extensions for concurrency(concurrency TS) | ||||
| Extensions for concurrency 2(concurrency TS v2) | ||||
| Concepts(concepts TS) | ||||
| Ranges(ranges TS) | ||||
| Reflection(reflection TS) | ||||
| Mathematical special functions(special functions TR) | ||||
| Experimental Non-TS | ||||
| Pattern Matching | ||||
| Linear Algebra | ||||
| std::execution | ||||
| Contracts | ||||
| 2D Graphics |
| Member functions | ||||
| Observers | ||||
| Modifiers | ||||
| Non-member functions | ||||
operator==operator!=operator<operator<=operator>operator>= | ||||
| Helper classes | ||||
| Helper objects | ||||
Defined in header <experimental/optional> | ||
Compare two optional objects | ||
template<class T> constexprbool operator==(const optional<T>& lhs,const optional<T>& rhs); | (1) | (library fundamentals TS) |
template<class T> constexprbool operator!=(const optional<T>& lhs,const optional<T>& rhs); | (2) | (library fundamentals TS) |
template<class T> constexprbool operator<(const optional<T>& lhs,const optional<T>& rhs); | (3) | (library fundamentals TS) |
template<class T> constexprbool operator<=(const optional<T>& lhs,const optional<T>& rhs); | (4) | (library fundamentals TS) |
template<class T> constexprbool operator>(const optional<T>& lhs,const optional<T>& rhs); | (5) | (library fundamentals TS) |
template<class T> constexprbool operator>=(const optional<T>& lhs,const optional<T>& rhs); | (6) | (library fundamentals TS) |
Compare an optional object with anullopt | ||
template<class T> constexprbool operator==(const optional<T>& opt,std::nullopt_t)noexcept; | (7) | (library fundamentals TS) |
template<class T> constexprbool operator==(std::nullopt_t,const optional<T>& opt)noexcept; | (8) | (library fundamentals TS) |
template<class T> constexprbool operator!=(const optional<T>& opt,std::nullopt_t)noexcept; | (9) | (library fundamentals TS) |
template<class T> constexprbool operator!=(std::nullopt_t,const optional<T>& opt)noexcept; | (10) | (library fundamentals TS) |
template<class T> constexprbool operator<(const optional<T>& opt,std::nullopt_t)noexcept; | (11) | (library fundamentals TS) |
template<class T> constexprbool operator<(std::nullopt_t,const optional<T>& opt)noexcept; | (12) | (library fundamentals TS) |
template<class T> constexprbool operator<=(const optional<T>& opt,std::nullopt_t)noexcept; | (13) | (library fundamentals TS) |
template<class T> constexprbool operator<=(std::nullopt_t,const optional<T>& opt)noexcept; | (14) | (library fundamentals TS) |
template<class T> constexprbool operator>(const optional<T>& opt,std::nullopt_t)noexcept; | (15) | (library fundamentals TS) |
template<class T> constexprbool operator>(std::nullopt_t,const optional<T>& opt)noexcept; | (16) | (library fundamentals TS) |
template<class T> constexprbool operator>=(const optional<T>& opt,std::nullopt_t)noexcept; | (17) | (library fundamentals TS) |
template<class T> constexprbool operator>=(std::nullopt_t,const optional<T>& opt)noexcept; | (18) | (library fundamentals TS) |
Compare an optional object with aT | ||
template<class T> constexprbool operator==(const optional<T>& opt,const T& value); | (19) | (library fundamentals TS) |
template<class T> constexprbool operator==(const T& value,const optional<T>& opt); | (20) | (library fundamentals TS) |
template<class T> constexprbool operator!=(const optional<T>& opt,const T& value); | (21) | (library fundamentals TS) |
template<class T> constexprbool operator!=(const T& value,const optional<T>& opt); | (22) | (library fundamentals TS) |
template<class T> constexprbool operator<(const optional<T>& opt,const T& value); | (23) | (library fundamentals TS) |
template<class T> constexprbool operator<(const T& value,const optional<T>& opt); | (24) | (library fundamentals TS) |
template<class T> constexprbool operator<=(const optional<T>& opt,const T& value); | (25) | (library fundamentals TS) |
template<class T> constexprbool operator<=(const T& value,const optional<T>& opt); | (26) | (library fundamentals TS) |
template<class T> constexprbool operator>(const optional<T>& opt,const T& value); | (27) | (library fundamentals TS) |
template<class T> constexprbool operator>(const T& value,const optional<T>& opt); | (28) | (library fundamentals TS) |
template<class T> constexprbool operator>=(const optional<T>& opt,const T& value); | (29) | (library fundamentals TS) |
template<class T> constexprbool operator>=(const T& value,const optional<T>& opt); | (30) | (library fundamentals TS) |
Performs comparison operations onoptional objects.
optional objects,lhs andrhs. The contained values are compared (usingoperator== for(1,2) andoperator< for(3-6)) only if bothlhs andrhs contain values. Otherwise,optional that does not contain a value.| lhs, rhs, opt | - | anoptional object to compare |
| value | - | value to compare to the contained value |
| Type requirements | ||
-T must meet the requirements ofEqualityComparable in order to use overloads (1,2). | ||