我想知道是否有可能有某种参数化的 typedef。
为了说明,在我的代码中,我使用了这个 typedef:
typedef std::queue<std::vector<unsigned char>, std::deque<std::vector<unsigned char> > > UnsignedCharQueue;
如您所见,这是一个相当笨拙的构造,因此 typedef 是有意义的。但是,如果我想拥有其他数据类型的队列,我需要事先明确定义它们。
所以我在想是否可以使用这样的构造:
typedef std::queue<std::vector<T>, std::deque<std::vector<T> > > Queue<T>;
private:
Queue<unsigned char> mMyQueue;
类似于 Java 中的泛型。