所以这更像是一个语法问题.我一直在'*'token'之前得到错误"Expected')':
#include "CDocumentObserver.h"
#include "CViewPlayerDlg.h"
/*
* Class: CViewPlayer
*
*/
class CViewPlayer : public wxWindow, public CDocumentObserver
{
public:
CViewPlayer(CViewPlayerDlg *dlg); //here
Run Code Online (Sandbox Code Playgroud)
在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());
}
Run Code Online (Sandbox Code Playgroud)
是什么导致这个错误?我认为.cpp的构造函数中出现了错误,但我不知道.
这通常意味着尚未声明类.
CViewPlayerDlg在CViewPlayer构造函数的声明中使用它之前检查是否已声明CViewPlayer(CViewPlayerDlg* dlg).
头文件中的语法错误通常意味着错误位于头文件中,而不是源(.cpp)文件中.