, я читаю N3291» 12.8. (11/15/28) Копирование и перемещение объектов классов класса. Copy] «Исправьте, что неявно заявленный Constructor
T (T &&)
и аналогично перемещению , используя , используя соответствующую T оператор = (T &&)
элементов.
Пример:
struct CopyOnly {
CopyOnly();
CopyOnly(const CopyOnly&);
}; // declaring a copy means no implicit move.
struct Question {
std::vector data_;
CopyOnly copyOnly_;
};
В вопросе
struct CopyOnly {
CopyOnly();
CopyOnly(const CopyOnly&);
}; // declaring a copy means no implicit move.
struct Question {
std::vector data_;
CopyOnly copyOnly_;
};
класс
= DELETE
D , потому что нестатический элемент данных data_
Подходит только , но не подвижный ? Обновление. Побочный вопрос: для Вопрос q;
будет STD :: Move (Q)
Все еще работает? Будет ли там неудачу скопировать там? Или будет неявно объявлено Project-CTOR Force, чтобы компилятор остановиться с ошибкой? здесь Это скомпилируется.
Обновление 2. Что означает компилятор для недвижимых данных-членов данных, если я объявляю вопрос MOVE-CTOR (вопрос &&) = по умолчанию
? Это тогда Foxback для копирования тех?