Результаты поиска по запросу "move-constructor"
Конструктор Move не вызывается при создании исключения
У меня есть переменная, которая накапливает текущее исключение и нуждается в очистке, когда выбрасывается текущее исключение (чтобы об этой же ошибке не сооб...
Понимание `std :: is_move_constructible`
Типы без конструктора перемещения, но с конструктором копирования, который принимает
Переместить конструктор против копирования Elision. Какой из них называется?
У меня есть две части кода, чтобы показать вам. Это два класса, каждый из которых предоставляет конструктор Move и функцию, которая возвращает временный объе...
(Почему) должен конструктор перемещения или оператор присваивания перемещения очистить свой аргумент?
Пример реализации конструктора перемещения из курса C ++, который я использую, выглядит примерно так:
Переместить элемент std priority_queue в C ++ 11
Минимальный рабочий пример. #include <cassert> #include <list> #include <queue> //#define USE_PQ struct MyClass { const char* str; MyClass(const char* _str) : str(_str) {} MyClass(MyClass&& src) { str = src.str; src.str = nullptr; } ...
В любом случае у вас есть ответ. Удачи.
у наследовать конструктор копирования базового класса, используяusing ключевое слово: #include <iostream> struct A { A() = default; A(const A &) { std::cerr << __PRETTY_FUNCTION__ << std::endl; } A( A &&) { std::cerr << __PRETTY_FUNCTION__ << ...
4 Если в классе нет объявленного пользователем деструктора, деструктор неявно объявляется как дефолтный (11.4). Неявно объявленный деструктор является встроенным публичным членом своего класса.
у обновить память в условиях, при которых компилятор обычно автоматически генерирует конструктор по умолчанию, конструктор копирования и оператор присваивания. Я помню, что были некоторые правила, но я не помню, а также не могу ...
обычно является антипаттерном, потому что он может предотвратить оптимизацию возвращаемого значения. И в этом примере это только «правильно», поскольку основной пример не имеет смысла.
лько я понимаю, конструктор перемещения вызывается, если он существует, когда мы возвращаем локальный объект из функции. Однако я столкнулся с ситуацией, когда вместо этого вызывался конструктор копирования, как показано в следующем примере в ...
Конструкторы перемещения создаются автоматически?
У меня большой класс, в котором много контейнеров STL. Будет ли компилятор автоматически создавать конструктор перемещения, который будет перемещать эти контейнеры к цели, или я должен сделать свой собственный?
Когда вызывается Move Constructor?
Я запутался, когда конструктор перемещения вызывается против конструктора копирования. Я прочитал следующие источники: Конструктор Move не вызывается в C ++ ...