C++TEMPLATES上面讲,类型是Stack类名是Stack
我在看数据结构与算法分析的书上,
类的定义如下:
templateclass Link
{
E element;
Link*next;//为什么是Link而不是Link<T>,这里不是类型么
Link(const E&elemval,Link*nextval=NULL)//Link*nextval=NULL也是这个问题
Link(Link*nextval=NULL);//同样为什么参数列表中的不是Link<T>
}
模板是类型安全的版本,但是只能针对特定的类型,给你的建议是,能用模板就用模板。
你这里的定义是template class Link,没有定义你的模板类的变量是什么,如果你要用Link的话,定义应该为template class Link