guides de déduction pour std::optional
Depuis fr.cppreference.net
| Défini dans l'en-tête <optional>
|
||
template< class T >
optional(T) -> optional<T>;
|
(depuis C++17) | |
Un guide de déduction est fourni pour std::optional afin de prendre en compte les cas limites manqués par les guides de déduction implicites, en particulier, les arguments non copiables et la conversion de tableau en pointeur.
Exemple
Exécuter ce code
#include <optional> #include <type_traits> int main() { int a[2]; std::optional oa{a}; // utilise le guide de déduction explicite static_assert(std::is_same_v<decltype(oa), std::optional<int*>> == true); }