Dan*_*oof 3 c++ generics variables stack templates
我只想做以下事情:
template <typename T>
class gvar {
private:
T var;
public:
gvar(T var) : var(var) {}
};
std::stack<gvar> some_stack;
Run Code Online (Sandbox Code Playgroud)
g ++吐出了关于gvar不是一个类型的各种错误.这可以通过一些相对简单的方式实现吗?我不想使用boost :: any/boost :: variant.
编辑:
澄清我想要的东西:
一个std :: stack,可以保存不同类型的变量(只是原语很好).
因为gvar
它不是一个类型,所以它是一个类型模板.您需要为其指定模板参数:
std::stack< gvar<int> > some_stack;
Run Code Online (Sandbox Code Playgroud)