Зачем мне нужен способ копирования и обмена?

Я не вижу смысла в использовании идиомы копирования и обмена в C++11. Если мне нужна ручка, я могу использовать unique_ptr или же shared_ptr, Если мне нужна коллекция предметов, я могу просто vector или же string,

struct Relax
{
   shared_ptr<Texture> resource;
public:
   /* rest of stuff */
};

Для меня идиома копирования и обмена звучит как бессмысленное мысленное упражнение, полное ошибок, ожидающих своего появления.

  • беспокоиться об исключениях

  • мне нужно беспокоиться о самостоятельном назначении или нет? преждевременная оптимизация - корень зла

  • я пропустил место, чтобы позвонить swap где-то в конструкторах моего класса?

  • может я забыл delete где-то?

Допустим, у меня есть веская причина использовать ручное управление памятью. Там все еще распределители, обмен указателями и т. Д.

В современном C++, когда мне нужно было бы сделать ручное управление памятью (new, delete) в отношении копирования и обмена?

0 ответов

Другие вопросы по тегам