C ++ wxWidgets应用程序没有编译

时间:2012-01-12 04:17:53

标签: c++ wxwidgets

编译我的wxWidgets程序时遇到问题。

#include <wx/wx.h>
#include <wx/url.h>
#include <wx/stream.h>
#include <wx/sstream.h>

int main(int argc, char* argv[])
{
    wxURL url(wxT("http://google.com"));
    if (url.GetError()==wxURL_NOERR)
    {
        wxString htmldata;
        wxInputStream *in = url.GetInputStream();
        if (in && in->IsOk())
        {
            wxStringOutputStream html_stream(&htmldata);
            in->Read(html_stream);
        }
        wxPuts(html_stream.GetString();
    }


}

当我尝试编译它时,我收到以下错误:

main.cpp  In function 'int main(int, char**)':
main.cpp 8 error: 'wxURL' was not declared in this scope
main.cpp 8 error: expected ';' before 'url'
main.cpp 9 error: 'url' was not declared in this scope
main.cpp 9 error: 'wxURL_NOERR' was not declared in this scope
main.cpp 12 error: 'wxInputStream' was not declared in this scope
main.cpp 12 error: 'in' was not declared in this scope
main.cpp 15 error: 'wxStringOutputStream' was not declared in this scope
main.cpp 15 error: expected ';' before 'html_stream'
main.cpp 16 error: 'html_stream' was not declared in this scope
main.cpp 18 error: 'html_stream' was not declared in this scope
=== Build finished: 10 errors, 0 warnings ===

我做错了什么?我应该使用OnInit()而不是int main(),即使我希望应用程序是一个控制台,非gui一个?

1 个答案:

答案 0 :(得分:0)

查看wxWidgets的setup.h文件,确保wxURL为#define

#define wxUSE_URL 1

有关设置文件(setup.h)的更多信息,请查看http://wiki.wxwidgets.org/Setup.H

要查看wxURL的示例,请查看您的wxWidgets文件夹,转到“samples”并查看“sockets_client”。

还有参考文件

http://docs.wxwidgets.org/2.9.3/classwx_u_r_i.html

http://wiki.wxwidgets.org/WxURL

http://wiki.wxwidgets.org/Download_a_file_from_internet