Вопросы с тегом «copy-constructor»

2003
Что такое идиома копирования и обмена?

Что это за идиома и когда ее следует использовать? Какие проблемы это решает? Меняется ли идиома при использовании C ++ 11? Хотя это упоминалось во многих местах, у нас не было ни единого вопроса и ответа «что это такое», так что вот оно. Вот частичный список мест, где это было упомянуто ранее:...

173
Отключить конструктор копирования

У меня есть класс: class SymbolIndexer { protected: SymbolIndexer ( ) { } public: static inline SymbolIndexer & GetUniqueInstance ( ) { static SymbolIndexer uniqueinstance_ ; return uniqueinstance_ ; } }; Как я должен изменить его, чтобы отключить код вроде: SymbolIndexer symbol_indexer_ =...

127
Условия для автоматического создания оператора по умолчанию / копирования / перемещения и оператора присваивания копирования / перемещения?

Я хочу освежить свою память об условиях, при которых компилятор обычно автоматически генерирует конструктор по умолчанию, конструктор копирования и оператор присваивания. Я припоминаю, что были некоторые правила, но я не помню, а также не могу найти авторитетный ресурс в Интернете. Кто-нибудь может...

87
Перегрузка конструктора копирования и оператора = в C ++: возможна ли общая функция?

Поскольку конструктор копирования MyClass(const MyClass&); и оператор = перегрузка MyClass& operator = (const MyClass&); имеют практически одинаковый код, одинаковый параметр и отличаются только при возврате, возможно ли иметь общую функцию для них обоих?...

29
Копирование структур с неинициализированными членами

Допустимо ли копировать структуру, некоторые члены которой не инициализированы? Я подозреваю, что это неопределенное поведение, но если это так, то оставлять неинициализированные члены в структуре (даже если эти члены никогда не используются напрямую) довольно опасно. Поэтому мне интересно, есть ли...