最近用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---------