c++定义模板以后的运用问题,求老鸟指点

类定义如下

template<class T>
class Queue{
public:
	Queue(int c);
private:
	T *p;
	int Capacity;
};

定义一个列队

Capacity是列队的长度

main里运用时纠结了

Queue<int> *p=new Queue(4);

Queue<int> *p=new Queue<int>(4);

都报错

视频里老师是把参数定义在<>里,用无参构造函数定义

那有参构造函数应该怎么调用呢?

求老鸟指点

xiele
浏览 1279回答 2
2回答

onemoo

你第一种写法 Queue<int> *p=new Queue(4); 肯定不对。 因为Queue不是个class类型,而是class模板。模板使用时必须有确定的模板参数。你第二种写法没错啊!  Queue<int> 这样就确定了模板参数T,Queue<int>就算是一个模板实例类,可以正常使用。 而且 new Queue<int>(4) 是在构造时调用了你的构造函数,也没有问题!(当然你要确定你实现了这个构造函数)。

慕容5123895

构造函数如何写的?
打开App,查看更多内容
随时随地看视频慕课网APP