Задать вопрос
@BMinhoj

При наличии каких членов класса move-конструктор не будет сгенерирован автоматически?

1) Пользовательский explicit конструктор
2) Пользовательский move конструктор
3) Пользовательский конструктор копирования
4) Пользовательский оператор присваивания
5) Пользовательский move-оператор присваивания
6) пользовательский деструктор
7) Приватное поле примитивного типа
  • Вопрос задан
  • 115 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Stepik
    Внутреннее устройство контейнеров в STL (C++)
    2 недели
    Далее
  • Skillbox
    Разработчик на C++
    7 месяцев
    Далее
Решения вопроса 1
@Mercury13
Программист на «си с крестами» и не только
Implicitly-declared move constructor

If no user-defined move constructors are provided for a class type (struct, class, or union), and all of the following is true:
  • there are no user-declared copy constructors;
  • there are no user-declared copy assignment operators;
  • there are no user-declared move assignment operators;
  • there is no user-declared destructor.

then the compiler will declare a move constructor as a non-explicit inline public member of its class with the signature T::T(T&&).

Ну и пользовательский move-конструктор исключает автоматический.
Так что 2, 3, 4, 5, 6.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы