所以这更像是一个语法问题。我一直在'*'token'之前得到错误“Expected')':
#include "CDocumentObserver.h"
#include "CViewPlayerDlg.h"
/*
* Class: CViewPlayer
*
*/
class CViewPlayer : public wxWindow, public CDocumentObserver
{
public:
CViewPlayer(CViewPlayerDlg *dlg); //here
在CViewPlayer.h中。 .cpp构造函数如下所示:
#include "CViewPlayer.h"
#include "wx/prec.h"
#include "CViewPlayerDlg.h"
using namespace std;
BEGIN_EVENT_TABLE(CViewPlayer, wxWindow)
EVT_PAINT(CViewPlayer::OnPaint)
END_EVENT_TABLE()
CViewPlayer::CViewPlayer(CViewPlayerDlg *dlg) :
wxWindow(dlg, wxID_ANY, wxDefaultPosition, wxSize(dlg->GetDocument()->GetSize()), wxBORDER_SUNKEN),
CDocumentObserver(dlg->GetDocument()), mStartTime(0), mPlayTime(0), mPlaying(false)
{
SetBackgroundColour(wxColour(128, 128, 128));
SetClientSize(GetDocument()->GetSize());
}
导致此错误的原因是什么?我认为.cpp的构造函数中出现了错误,但我不知道。
答案 0 :(得分:5)
这通常意味着尚未声明一个类。
在CViewPlayerDlg
构造函数CViewPlayer
的声明中使用它之前,请检查CViewPlayer(CViewPlayerDlg* dlg)
是否已声明。
头文件中的语法错误通常意味着错误位于头文件中,而不是源(.cpp)文件中。