Вопросы по теме 'move-assignment-operator'
Безопасно ли присвоение перемещения с помощью destruct + move construct?
Вот очень простой способ определить назначение перемещения для большинства классов с помощью конструктора перемещения:
class Foo {
public:
Foo(Foo&& foo); // you still have to write this one
Foo&...
670 просмотров
schedule
06.11.2021
Являются временными lvalue вариантом использования std :: move
У меня такой class :
class Widget
{
public:
Widget(A const& a) { /* do something */ }
Widget(A&& a) { /* do something */ }
};
Что я могу использовать так:
A a{};
Widget widget{a};
Если бы я пришел к выводу, что...
96 просмотров
schedule
03.05.2022
Двойное перемещение по одному и тому же объекту копируется слева направо?
Я только новичок в операции перемещения в С++ 11, поэтому играю с ней. Но нашел то, что я не могу понять.
#include <iostream>
using namespace std;
class A{
public:
A(){cout << "default ctor" << endl;}...
1706 просмотров
schedule
03.06.2022
Как удалить оператор присваивания перемещения и сохранить совместимость со стандартными контейнерами?
У меня есть простая оболочка RAII для управления определенным ресурсом. Вот интерфейс:
struct ResourceWrapper
{
explicit ResourceWrapper(RESOURCE resource);
ResourceWrapper(const ResourceWrapper& other);
ResourceWrapper&...
491 просмотров
schedule
30.09.2022
использование свопа для реализации назначения перемещения
Кое-что пришло мне в голову, что я считаю вполне разумным, но я хотел бы узнать мнение людей об этом на случай, если я просто что-то упустил. Итак, во-первых, мое понимание T& operator=(T&& rhs) заключается в том, что нам не важно ,...
3427 просмотров
schedule
20.09.2023
Вопросы об операторе присваивания перемещения
Представьте себе следующий класс, который управляет ресурсом (мой вопрос касается только оператора присваивания перемещения):
struct A
{
std::size_t s;
int* p;
A(std::size_t s) : s(s), p(new int[s]){}
~A(){delete [] p;}
A(A...
1690 просмотров
schedule
02.11.2023