Namespaces
Variants

deduction guides for std::pair

From cppreference.net
Utilities library
ヘッダーで定義 <utility>
template < class T1, class T2 >
pair ( T1, T2 ) - > pair < T1, T2 > ;
(C++17以降)

1つの 推論ガイド std::pair に対して提供されており、暗黙の推論ガイドで見逃されていたエッジケース、特に非コピー可能な引数と配列からポインタへの変換を考慮しています。

#include <utility>
int main()
{
    int a[2], b[3];
    std::pair p{a, b}; // このケースでは明示的な推論ガイドが使用されます
}