在我正在处理的项目中,我尝试使用curlpp库来进行简单的HTML GET请求。当我将cpp文件传递给g++时,我收到以下错误信息:
/usr/local/include/curlpp/internal/CurlHandle.hpp:185:42: error: implicit instantiation of undefined template 'std::__1::function<int (double, double, double, double)>'
curlpp::types::ProgressFunctionFunctor mProgressFunctor;
/usr/local/include/curlpp/internal/CurlHandle.hpp:134:66: error: implicit instantiation of undefined template 'std::__1::function<int (double, double, double, double)>'
void setProgressFunctor(curlpp::types::ProgressFunctionFunctor functor)
我对c++还比较陌生,所以希望能得到帮助。我在macOS Sierra上工作。我使用Homebrew安装了curlpp(即它位于/usr/local/Cellar中)。
这是我的代码:
1 #include <string>
2 #include <sstream>
3 #include <iostream>
4 #include <curlpp/cURLpp.hpp>
5 #include <curlpp/Easy.hpp>
6 #include <curlpp/Options.hpp>
7
8 using namespace curlpp::options;
9
10 int main(int, char **)
11 {
12 try
13 {
14 curlpp::Cleanup testCleanup;
15 curlpp::Easy miRequest;
16 miRequest.setOpt<Url>("http://www.wikipedia.org");
17 miRequest.perform();
18 }
19 catch(curlpp::RuntimeError & e)
20 {
21 std::cout << e.what() << std::endl;
22 }
23 catch(curlpp::LogicError & e)
24 {
25 std::cout << e.what() << std::endl;
26 }
27
28 return 0;
29 }