我正在尝试将std::vector
存储在一个名为InputManager
的类中,用于存储侦听器。
我有一个名为Listener
的超类。此类包含存储在模板中的类型的变量。
template <class obj>
class Listener
派生类根据侦听器类型定义模板:
class onClickListener : public Listener<Button*>
如何在不定义类型的情况下存储std::vector
Listeners
?
std::vector<Listener<obj>> InputManager::listeners = std::vector<Listener<obj>>()
class InputManager
{
public:
template <class obj>
InputManager(GLFWwindow* window);
template <class obj>
void run();
~InputManager();
static InputManager* Self;
template<class obj>
void addListener(Listener<obj>* listener);
private:
GLFWwindow* window;
static std::vector<Listener<obj>> InputManager::listeners = std::vector<Listener<obj>>();
};
如果您需要更多信息,请告诉我们。