Пользовательский shared_ptr при достижении счета 1C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Пользовательский shared_ptr при достижении счета 1

Сообщение Anonymous »

У меня есть следующая проблема в C ++.
Я создаю объект-фабрику, на которой есть метод, возвращающий shared_ptr в объект класса.
Фабрика объекта использует буфер предварительно выделенных объектов, называемых «Free_buffer».
После того, как метод называется, он перемещает указатель объекта к «используемому_buffer». Код: < /p>

Код: Выделить всё

class ObjectFactory {
public:
std::shared_ptr get_object()
{
auto obj = free_buffer.pop_back();
used_buffer.push_back(obj);
return obj;
}
private:
std::vector used_buffer;
std::vector free_buffer;
}
Я хочу сделать, что если объект, возвращаемый get_object, не используется каким -либо другим владельцем, кроме фабрики объекта (который имеет свой ссылку в used_buffer), то есть его количество уменьшается до 1, он будет перемещен в «free_buffer» автоматически без явной проверки от звонящего.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... ng-count-1
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»