小编Lor*_*ano的帖子

删除警告:“在 C++ 中,只要‘if’条件为假,就使用未初始化的变量‘result’”

我见过与此类似的问题,但由于找不到使用模板的问题,因此没有一个对我有帮助。对于家庭作业,我必须编写一个可用于任何类型变量的堆栈,因此我决定使用模板。这阻止了我初始化变量,我的代码给了我一个关于 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)

c++ stack templates

2
推荐指数
1
解决办法
1183
查看次数

标签 统计

c++ ×1

stack ×1

templates ×1