{token之前的预期类名

时间:2010-04-04 22:59:41

标签: c++ compilation

我想弄清楚我收到错误:{token

之前的预期类名

以下是错误的相对来源:

#pragma once
#ifndef H_FXACTION
#define H_FXACTION

#include "CP_M_RefCounted.h"
#include "FxTypes.h"
#include "string"
#include "FxString.h"
#include "FxPixels.h"
#include "CP_Rect.h"
#include "FxStreamable.h"
#include "FxPoint.h"
#include "FxPtr.h"
#include "FxImage.h"
#include "FxSleekStreaming.h"

typedef FxID FxActionType;
typedef FxUInt32 FxActionID;

FxActionID FrMakeUniqueActionID(void); 

class FxActionData;

class FxActionData : public CP_M_RefCounted
{

    public:
    FxActionData();
    FxActionData(FxBool final) :mFinal(final) { }
    virtual ~FxActionData();

我在此行收到错误:class FxActionData:public CP_M_RefCounted

我没有得到的是为什么行:class FxActionData;当你直接在它下创建类时,它是否存在这不是一个前瞻性声明吗?

这里可能会发生什么事情?

1 个答案:

答案 0 :(得分:3)

class FxActionData;是*前向声明。它不会伤害任何东西,但允许不拖动一个完整的头文件,比如说只是指向一个类的指针。在这里你的情况没用。

CP_M_RefCounted可能是模板(或者可能在命名空间中声明)。查看CP_M_RefCounted.h

中的内容