![]() |
Home | Libraries | People | FAQ | More |
Table 6. Comparison with std::optional
|
|
|
|
|---|---|---|
|
|
|
Different name for no-value tag. |
|
|
|
Different name for in-place initialization tag. |
|
|
No in-place initialization with initializer-list in |
|
|
|
No syntax for conditional in-place initialization in |
|
|
|
No syntax for conditional initialization from |
|
|
|
|
Constructors form |
|
|
No clever deduction of of |
|
|
|
No optional references in |
|
|
|
No |
|
|
|
|
Different names and signatures for monadic interface functions.
|
|
|
No |
|
|
|
No |
|
|
|
No comparisons with |
|
|
|
No |
|
|
|
No |
|
|
|
No printing to IOStreams in |
|
|
|
|
optional<T> is never |
void test(vector<optional<T>> rng, T val) { std::ranges::find(rng, val); } |
void test(vector<optional<T>> rng, T val) { std::ranges::find(rng, make_optional(val)); } |
For |