Tworzenie przyszłości z pośredniej przyszłości?

W poniższym przykładowym kodzie chcę utworzyćItem obiekt od aComponent:

struct Component { };

struct Item {
    explicit Item(Component component) : comp(component) {}    
    Component comp;
};

struct Factory {
    static std::future<Item> get_item() {
        std::future<Component> component = get_component();        
        // how to get a std::future<Item> ?
    }

    std::future<Component> get_component();
};

Jak mam odejśćstd::future<Component> dostd::future<Item>?


Aktualizacja: usunąłem mój pierwszy pomysł (który był oparty na wątkach) z pytania i wysłałem odpowiedź.

questionAnswers(3)

yourAnswerToTheQuestion