我正在阅读 Nicolai M. Josuttis 的“C++ 标准库(第二版)”,并且刚刚到达关于std::pair
. 作者指出:
从 C++11 开始,
pair<>
使用只有非常量复制构造函数的类型将不再编译。
然后他继续举以下例子:
class A
{
public:
...
A( A& ); // copy constructor with nonconstant reference
...
};
std::pair<A, int> p; // Error since C++11
但是,我对标准委员会决定对标准库标准进行此修改的原因感兴趣?我试图用谷歌搜索原因,但没有找到任何相关的东西。