У страусячего трупа написано, что копи конструктор нужен только тогда, когда дефолт не устраивает: By default, the copy of a class object is a copy of each member. If that default is not the behavior wanted for a class X , a more appropriate behavior can be provided by defining a copy constructor