我的任务是创建一个优先级队列模板类,并使用不同的数据类型显示其工作:int,string和任何结构。我必须添加,删除,打印一个特定的元素。C++中的结构和模板类
的类是:
template< class Type >
class PriorityList
{
private:
List<Type> elems;
作为一个结构我挑选是这样的:
struct SOMESTRUCT
{
int num;
char word[];
};
据我所知一个模板类是可用于任何传入数据类型的通用类。我可以看到如何为int和char []创建类,但是如何使它对结构也起作用?既然你不能只写cout < <结构,既不cin >> ...我不得不创建另一个函数输入/输出我的结构,但如果我把它放在我的模板类中,类不会是再次普遍。
我该怎么办?另外,我是否必须制作模板或只留下一个类型名称?
可能重复[如何正确重载ostream的<<运算符?](http://stackoverflow.com/questions/476272/how-to-properly-overload-the-operator-for-an-ostream ) – wally
[This](https://msdn.microsoft.com/en-us/library/1z2f6c2k.aspx)也可能有所帮助。 – wally
嗯..谢谢你的选择!但是,我还应该创建自己的Int和Char类,对吧?所以我可以写模板,对吧? –
Mary