c ++:"类型'List&'的非const引用的无效初始化来自'List*'类型的临时值"

use*_*889 0 c++ c++11 c++98

我有以下功能设置,将文件解析为List类设置.我得到一个"从'List''类型的临时错误初始化'List&'类型的非const引用错误.这是什么意思?

void parseFile (string filename, List& list)
{
    ifstream file (filename);
    // Parsing code
    file.close();
    return;
}

int main ()
{
    List list;
    parseFile ("file.xml", &list); // ERROR OCCURS HERE
    return 1;
}
Run Code Online (Sandbox Code Playgroud)

jro*_*rok 7

错误消息没有那么清楚.您将地址(a List*)传递list给声明为左值引用(List&)的函数.

parseFile ("file.xml", list);改为写.