GCC报错:invalid use of member 'char node::getData()' (did you forget the '&' ?)的一种可能原因

最近用C++写代码,GCC编译。

静态检测没有错误,执行时GCC报错如下:

{
    "resource": "/c:/Users/fuck/Documents/CLanguage/c:/Users/fuck/Documents/CLanguage/test.cpp",
    "owner": "cpptools",
    "severity": 8,
    "message": "invalid use of member 'char node::getData()' (did you forget the '&' ?)",
    "source": "gcc",
    "startLineNumber": 27,
    "startColumn": 18,
    "endLineNumber": 27,
    "endColumn": 18
}

检查了一下,发现是如下代码有问题:

while (head!=NULL)
    {
        if(head->getData()==target) return target;
        target+=1;
        head = head->getNext;  //这里!!!!!!!!!!! 
    }

head是一个指向对象的指针。

我本来是想调用该对象的getNext函数。

结果竟然忘了写括号。。。。。。

将getNext改为getNext()就通过了。

-----------<< endl---------

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章