Я пытаюсь переопределить унаследованную функцию из базового класса, который также является шаблоном класса, но я не могу заставить его работать.
До сих пор базовый класс:
template<typename T, typename instrument>
class Probe {
private:
instrument probe;
public:
Probe(instrument _probe) : probe{_probe} {}
virtual T read() const;
instrument getProbe() const {return this->probe;}
};
В то время как производный класс:
class TestProbe : public Probe<int,int> {
public:
TestProbe(int _probe) : Probe(_probe) {}
virtual int read() const override {return getProbe();} // later will have a more complex expression
};
Ошибка, которую я получаю всякий раз, когда пытаюсь скомпилировать: undefined reference to Probe<int, int>::read() const