{{cpp/utility/optional/deduction_guides|lang=zh}}std::optional
来自 zh.cppreference.net
| 定义于头文件 <optional>
|
||
template< class T >
optional(T) -> optional<T>;
|
(C++17 起) | |
为 std::optional 提供了一个 推导指引 ,以处理隐式推导指引遗漏的边界情况,特别是不可复制参数和数组到指针转换。
示例
运行此代码
#include <optional> #include <type_traits> int main() { int a[2]; std::optional oa{a}; // 使用显式推导指南 static_assert(std::is_same_v<decltype(oa), std::optional<int*>> == true); }