Deduktionshilfen für std::optional
From de.cppreference.net
| Definiert in Header <optional>
|
||
template< class T >
optional(T) -> optional<T>;
|
(seit C++17) | |
Eine Deduktionshilfe wird für std::optional bereitgestellt, um die Grenzfälle zu berücksichtigen, die von den impliziten Deduktionshilfen übersehen werden, insbesondere nicht kopierbare Argumente und Array-zu-Zeiger-Konvertierung.
Beispiel
Diesen Code ausführen
#include <optional> #include <type_traits> int main() { int a[2]; std::optional oa{a}; // verwendet expliziten Deduction Guide static_assert(std::is_same_v<decltype(oa), std::optional<int*>> == true); }