2015-07-20 9 views
1

所以我刚刚从昨天开始学习C++,并感谢一些Lua的经验,我很快捕捉到了它。我一直在http://courses.caveofprogramming.com/上进行初级课程。我试图创建一个类,但遇到了一个错误。也许值得一提的是,专家使用Eclipse作为他的EDI,而我使用CodeBlocks。这是我的。对'Cat :: Grizzly()'|的未定义引用

的main.cpp

#include <iostream> 
#include "Cat.h" 

using namespace std; 

int main() 
{ 
    Cat tommy; 
    tommy.Grizzly() == true; 
    tommy.Bark(); 

    return 0; 
} 

Cat.cpp

#include "Cat.h" 
#include <iostream> 

using namespace std; 

void Cat::Bark() 
{ 
    if (Grizzly()) 
    { 
     cout << "RUFF!!!!!!" << endl; 
    } 
    else 
    { 
     cout << ":)" << endl; 
    } 
} 

Cat.h

#ifndef CAT_H 
#define CAT_H 


class Cat 
{ 
public : 
    bool Grizzly(); 
    void Bark(); 
}; 

#endif // CAT_H 

这里的错误

C:\Users\Nas\Desktop\Coding Projects\Class Members 4\main.cpp|9|undefined reference to `Cat::Grizzly()'| 
+0

像比较'tommy.Grizzly()== TRUE;'将不能完成在Lua多任一。 – molbdnilo

回答

0

您收到undefined reference错误,因为您尚未定义Cat::Grizzly,您刚刚声明了它。

添加定义为函数:

bool Cat::Grizzly() { 
    //implementation 
}