Зачем мне нужен способ копирования и обмена?
Я не вижу смысла в использовании идиомы копирования и обмена в C++11. Если мне нужна ручка, я могу использовать unique_ptr
или же shared_ptr
, Если мне нужна коллекция предметов, я могу просто vector
или же string
,
struct Relax
{
shared_ptr<Texture> resource;
public:
/* rest of stuff */
};
Для меня идиома копирования и обмена звучит как бессмысленное мысленное упражнение, полное ошибок, ожидающих своего появления.
беспокоиться об исключениях
мне нужно беспокоиться о самостоятельном назначении или нет? преждевременная оптимизация - корень зла
я пропустил место, чтобы позвонить
swap
где-то в конструкторах моего класса?может я забыл
delete
где-то?
Допустим, у меня есть веская причина использовать ручное управление памятью. Там все еще распределители, обмен указателями и т. Д.
В современном C++, когда мне нужно было бы сделать ручное управление памятью (new
, delete
) в отношении копирования и обмена?