C ++错误代码无法链接

时间:2015-06-11 21:02:11

标签: c++ aggregation

我得到了三个我不理解的错误。第一个说:

robjects.r('fetch(dbSendQuery(mydb, {0}))'.format(sql_scores))

第二个说:

"Player::Player()", referenced from:
    Hangman::Hangman() in hangman.o. 

最后一个说:

"vtable for Hangman", referenced from:
    Hangman::Hangman() in hangman.o

有人能帮助我吗?

在我的头文件中,我有:

Hangman::~Hangman() in main.o.

在我的主要功能中,我有一个不同的文件:

     #ifndef PLAYER_H_
     #define PLAYER_H_

    #include <iostream>
    #include <string>
    #include <vector>

    using namespace std;

    class Player{

    public:
        Player();
        char MakeGuess();
        void Win();
        void Lose();
        char Agree();
    private:
        string name;
        int score;
    };
#endif

In my other headerfile I have 


#ifndef HANGMAN_H_
#define HANGMAN_H_
#include <iostream>
#include <string>
#include <vector>
#include "player.h"

using namespace std;

class Hangman
{
public:
    Hangman();
    void Play();
protected:
    Player player2;
    vector<string> words;
    int wrong;
    const int maxwrong=4;
    char guess;
    void virtual RespondIncorrectGuess();
};

 #endif

1 个答案:

答案 0 :(得分:0)

这些是链接器错误,而不是编译器错误。您需要找到包含头文件中声明的类函数的定义的源文件,然后添加要在项目中编译和链接的类。您需要的文件可能称为Player.cpp。