私のファイルは次のようになります。
main.cpp
...
bool SyncApp::OnInit(){
SetTopWindow(new syncWindow(_("(S)FTP Automatic Sync")));
GetTopWindow()->Show(true);
return true;
}
...
syncwindow.h
#include <wx/wx.h>
class syncWindow : public wxFrame {
public:
syncWindow(wxString title) : wxFrame(NULL, -1, title) { initialize(); }
private:
void initialize();
wxTextCtrl * serverEntry;
};
syncwindow.cpp
void syncWindow::initialize(){
serverEntry = new wxTextCtrl(this, wxID_ANY);
this->AddChild(serverEntry);
}
なんらかの理由で、ウィンドウを閉じるたびにセグメンテーション違反が発生します。serverEntry を子としてウィンドウに追加しないと、segfault は発生しません。なぜこれがそのようなことをしているのかわかりません。CentOS 6、g++ 4.7、および wxGTK 2.8 を使用しています。なぜこれが起こっているのかについて、誰かが何か考えやヒントを持っていますか?