C++ 复制使用stl容器的用户类中的构造函数

C++ 复制使用stl容器的用户类中的构造函数,c++,stl,C++,Stl,如果应用程序定义了类,其中每个类中只有纯数据和stl容器以各种组合,例如set

如果应用程序定义了类,其中每个类中只有纯数据和stl容器以各种组合,例如
set>>

此外,应用程序不会从另一种类型的stl容器构造一种类型的stl容器。问题是:在这样的应用程序中(在其所有类中)依赖默认的复制构造函数、
operator=
operator==
是否正确?以及stl容器的适当操作员/构造器


在仅使用纯数据和stl容器的类中定义用户的
X::X(const X&)
是否存在陷阱?

依赖默认副本构造函数是正确的,在定义新的副本构造函数时存在很多陷阱。别这样!没有必须定义的默认
运算符==
。其他所有内容都可以是默认生成的。标准库类型被设计为对(单线程)复制/移动/分配正确操作。您确定这些类确实需要复制构造函数吗?