¿No debería std :: pair <T1, T2> tener un constructor trivial predeterminado si T1 y T2 tienen?
Me encontré con un problema porque
std::is_trivially_default_constructible<std::pair<T1,T2>>::value == false;
incluso si
std::is_trivially_default_constructible<T1>::value == true;
std::is_trivially_default_constructible<T2>::value == true;
No pude encontrar una buena razón para este diseño. ¿No sería apropiado parastd::pair<T1,T2>
tener un=default
constructor siT1
yT2
¿tener?
¿Hay una solución simple (más simple que definir la mía)pair<>
)?