当我在课堂上将libcurl包装成问题:
Foo::Foo()
{
curl = curl_easy_init();
if (!curl)
throw std::runtime("Can't initialize libcurl");
}
char* Foo::GetPage(char *url)
{
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
curl_easy_setopt( curl, CURLOPT_WRITEFUNCTION, WriteData );
curl_easy_setopt( curl, CURLOPT_WRITEDATA, (void *)data);
CURLcode res = curl_easy_perform( curl );
}
我在GetPage函数的第一行(设置url)上遇到了段错误。如果我在GetPage中初始化卷曲 - 一切都好。其他人遇到过类似的问题吗?
答案 0 :(得分:1)
变量正在失去它的范围。在进入GetPage函数时检查curl变量的值。