我遇到了一个问题,因为不应该std ::对<T1,T2>有简单的默认构造函数,如果T1和T2有?
std::is_trivially_default_constructible<std::pair<T1,T2>>::value == false;
即使
std::is_trivially_default_constructible<T1>::value == true;
std::is_trivially_default_constructible<T2>::value == true;
我没能找到一个很好的理由,这样的设计。那岂不是适当的std::pair<T1,T2>
有=default
构造,如果T1
和T2
有哪些?
有一个简单的解决办法(比简单定义我自己pair<>
)?
应该有人[提交出库的问题(https://isocpp.org/std/submit-a-library-issue)。 – edmz 2014-10-27 16:46:49