我们必须在 C++ 中创建一个优先级队列。它应该能够使用模板处理所有数据类型。我们应该怎么做呢?Ps 我们在使用java和C之后才2个月前开始学习C++。谢谢
问问题
358 次
1 回答
1
编写可以处理所有数据类型的类的关键是使用模板。它有点类似于 Java 的泛型。
例子:
template <typename T>
class MyPriorityQueue
{
std::vector<T> data;
public:
void add(T const &d);
void remove();
void print();
};
所以如果你要创建这个类的一个对象你会写:
定义中的类型MyPriorityQueue<int> my_object;
名T自动替换为类型int
http://www.codeproject.com/Articles/257589/An-Idiots-Guide-to-Cplusplus-Templates-Part-1 http://www.cplusplus.com/doc/tutorial/templates/
于 2013-06-01T10:08:31.303 回答