Namespaces
Variants

Руководства по выводу типов для std::pair

From ru.cppreference.net
 
 
Библиотека утилит
Поддержка языка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования возможностей библиотеки (C++20)
Утилиты программ
Функции с переменным числом аргументов
Поддержка корутин (C++20)
Поддержка контрактов (C++26)
Трёхстороннее сравнение
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Общие утилиты
Операторы отношений (устарело в C++20)
 
 
Определено в заголовке <utility>
template<class T1, class T2>
pair(T1, T2) -> pair<T1, T2>;
(начиная с C++17)

Одно руководство по выводу типов предоставляется для std::pair для учёта граничных случаев, пропущенных неявными руководствами по выводу, в частности, некопируемых аргументов и преобразования массива в указатель.

Пример

#include <utility>
int main()
{
    int a[2], b[3];
    std::pair p{a, b}; // в данном случае используется явный гид дедукции
}