@Saharman

Как правильно передать данные из функтора?

Хочу свой проект сделать по стандартам MVC. Создал класс-функтор, который получает данные с сервера. Я бы хотел из другой единицы трансляции запросить данные у функтора ввиде какого-либо контейнера(например, std::list). Как мне правильно передать контейнер из этого функторв (желательно, чтобы в функторе эти данные не хранились, т.е вызываем функтор, он получает данные, складывает в std::list, передает этот std::list и владения)?
  • Вопрос задан
  • 103 просмотра
Пригласить эксперта
Ответы на вопрос 1
@koronabora
Человек
Явно существует конкретная задача, но ваше объяснение слишком абстрактно. Опишите что требуется сделать.

Вообще, очень похоже что подойдет move семантика, а именно:
- описываем класс DataClass который будет хранить данные
- при получении данных заводим экземпляр класса в виде std::unique_ptr и закидываем туда данные через конструктор (или метод)
- делаем метод "получить данные" который будет возвращать std::unique_ptr при помощи std::move
- как только мы хотим данные - вызываем метод "получить данные" и у нас появляется умный указатель на данные, при этому больше ни у кого его нет

Если нужно чтобы данные были в разных местах - тогда стоит использовать std::shared_ptr
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы