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---------

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