这里未定义的引用错误初学者

时间:2015-07-04 16:28:46

标签: c++

我是C ++的新手,而且我一直在努力解决这个问题。我把它复制成一本书,我正在使用代码块和我的IDE,但我不明白为什么这不起作用。我四处寻找答案,有人说

  

未定义的引用错误,通常是因为.o文件(其中   从.cpp文件中创建)不存在

但是当我检查文件时它就在那里。如果有人可以提供帮助,将不胜感激。我还认为问题的一部分可能与二进制范围解析运算符有关。这是我的代码:

    **gradebook.h**
    #include <string>
    using namespace std;
    class gradebook
    {
    public:
    gradebook ( string );
    void setcourseName( string );
    string getcourseName();
    void displayMessage();
    private:
    string courseName;
    };//end gradebook.h


    **gradebook.cpp**
    #include <iostream>
    #include "gradebook.h"
    using namespace std;
    gradebook::gradebook(string name){
    setcourseName(name);
    }
    void gradebook::setcourseName(string name){
    courseName = name;
    }
    string gradebook::getcouseName(){
    return courseName;
    }
    void gradebook::displayMessage(){
    cout<<"welcome to the grade book for\n" << getcourseName()<<"!"<<endl;                  
    }//end gradebook.cpp 


    **main.cpp**
    #include <iostream>
    #include "gradebook.h"
    using namespace std;
    int main()
    {
    gradebook gradebook1("CS101 introduction to c++ programing");
    gradebook gradebook2("CS102 data structures in c++");

    cout<< "gradebook1 created for course:" << gradebook1.getcourseName()
    << "\n gradebook2 created for course:" <<gradebook2.getcourseName()
    << endl;
    }//end main.cpp

我不断回复的错误是main.cpp undefined reference to gradebook::getcourseName()main.cpp undefined reference to gradebook::gradebook(std::string)

导致错误的原因是什么?

1 个答案:

答案 0 :(得分:0)

string gradebook::getcouseName(){

这里有函数名称的错字。