类定义和利用错误

时间:2012-12-04 21:39:12

标签: c++ syntax

我收到以下代码的错误。错误为incomplete type is not alloweduse of undefined type 'mGame'

header.h:

//--Libraries
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <iostream>
#include <string>
#include <sstream>
using namespace std;

//--Classes
class mGame;

Game.cc:

#include "header.h"

class mGame
{
private:

public:
    bool intro();
};

Intro.cc:

#include "header.h"

bool mGame::intro() //--Line 3
{
    printf("|-----------------------------|\n");

    printf("\n Welcome to the Guessing Game!\n");

    printf("\n|-----------------------------|\n");
    return false;
}

错误都在intro.cc的第3行。我试着找到一个解决方案,但我不能做我正在做的事情。

2 个答案:

答案 0 :(得分:0)

为了能够使用mGame中的Intro.cc,您必须将类声明移动到header.h(或者从Intro.cc包含到其他一些头文件中)

header.h中有一个前瞻性声明是不够的(这是“不允许不完整类型”的意思)。

答案 1 :(得分:0)

header.h不知道game.cc的任何定义,只告诉header.h,有一个类mGame。将game.cc重命名为game.h并将其包含在header.h中并删除“class mGame;”