我见过与此类似的问题,但由于找不到使用模板的问题,因此没有一个对我有帮助。对于家庭作业,我必须编写一个可用于任何类型变量的堆栈,因此我决定使用模板。这阻止了我初始化变量,我的代码给了我一个关于 pop() 函数的警告,谁能给我关于如何删除这样的警告的建议?
我的函数 pop():
template<typename T>
T stack<T>::pop(){
T result;
if(!empty()){
result = tos->data;
Node<T> *tmp = tos;
tos = tos->next;
delete tmp;
}else{
std::cerr<<"ERROR empty stack"<<std::endl;
}
return result;
}
Run Code Online (Sandbox Code Playgroud)