Виртуальный шаблонный метод C ++

У меня есть абстрактный класс (я знаю, что он не будет компилироваться таким образом, но это для понимания того, что Я хочу сделать):

class AbstractComputation {
    public:
        template <class T> virtual void setData(std::string id, T data);
        template <class T> virtual T getData(std::string id);
};

class Computation : public AbstractComputation {
    public:
        template <class T> void setData(std::string id, T data);
        template <class T> T getData(std::string id, T data);
};

Итак, когда я вызываю setData ("foodouble", data) , я хочу, чтобы двойник идентифицировался с помощью foodouble (внутренний механизм, который не является главная проблема здесь), чтобы установить двойные данные.

Так как это сделать?

Я думаю, что можно найти способ ввести что-то вроде virtual void setData (std :: string id, double data) , но я не знаю, как это сделать.

35
задан phs 5 July 2016 в 20:24
поделиться