Может ли кто-нибудь привести пример ситуации, когда требуется мелкая копия?Когда требуется мелкая копия (вместо глубокой копии)?
Обратите внимание, что в некоторых ситуациях мелкая копия и глубокая копия одинаковы. Это может произойти, когда объект не имеет права владения над любой из его подвариант; то есть все подварианты: aggregated. Я хотел бы видеть примеры, когда объект имеет composed из переменных, которыми он владеет, и все же желательно скопировать их неглубоко.
Примечание: Мне не важно, на каких языках приводятся примеры. Я задаю этот вопрос с точки зрения C++/Java/C#, хотя я думаю, что копирование является языковой агностикой.
это отличный пример! Спасибо. –
Кстати, вы когда-нибудь сталкивались с ситуацией, когда это было невозможно или нежелательно копировать не принадлежащие данные, и, таким образом, сериализацию оборванного указателя? –
внешних ресурсов (например, соединения с базой данных) являются «не скопируемыми». Но это не значит, что вам нужно хранить обвисший указатель, вы можете подготовиться к нему, освободив ресурс до сериализации. –