cURL
Haxx ad
libcurl

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curlpp mailing list Archives

[cURLpp] [Newbie] cURLpp::Types::WriteFunctionFunctor

From: TSalm <tsalm_at_free.fr>
Date: Mon, 02 Oct 2006 23:33:30 +0200

Hello,

In first, sorry about my bad english :)

I'm trying to compile the code below with g++ on linux.
But g++ return :

g++ -Wall -O2 -I/usr/include -c ButineurVirtuel.cpp -o
obj/Release/ButineurVirtuel.o
ButineurVirtuel.cpp: In member function «std::string
ButineurVirtuel::load(std::string)»:
ButineurVirtuel.cpp:22: erreur: no matching function for call to
«utilspp::Functor<unsigned int, utilspp::tl::TypeList<char*,
utilspp::tl::TypeList<unsigned int, utilspp::tl::TypeList<unsigned int,
utilspp::NullType> > > >::Functor(<unknown type>)»
/usr/local/include/utilspp/functor/Functor.inl:29: note: candidats sont:
utilspp::Functor<R, TList>::Functor(Fun) [with Fun = size_t
(ButineurVirtuel::*)(char*, size_t, size_t), R = unsigned int, TList =
utilspp::tl::TypeList<char*, utilspp::tl::TypeList<unsigned int,
utilspp::tl::TypeList<unsigned int, utilspp::NullType> > >]
/usr/local/include/utilspp/functor/Functor.inl:40: note:
 utilspp::Functor<R, TList>::Functor(const utilspp::Functor<R, TList>&)
[with R = unsigned int, TList = utilspp::tl::TypeList<char*,
utilspp::tl::TypeList<unsigned int, utilspp::tl::TypeList<unsigned int,
utilspp::NullType> > >]
Process terminated with status 1 (0 minutes, 7 seconds)
3 errors, 0 warnings

I know that this is first a C++ problem but I've trying a lot of way,
and none done.

Best regards,
Florent

====== Begin ======
#include <iostream>
#include <string>

#include <curlpp/cURLpp.hpp>
#include <curlpp/Easy.hpp>
#include <curlpp/Options.hpp>
#include <curlpp/Exception.hpp>

class ButineurVirtuel {
    private:
        std::string buffer;

    public:
        ButineurVirtuel();

        std::string load(std::string url);

        ~ButineurVirtuel();

    private:
        size_t WriteMemoryCallback(char*, size_t , size_t );
        cURLpp::Cleanup cleaner;
        cURLpp::Easy request;

};

using namespace std;

// constructeur
ButineurVirtuel::ButineurVirtuel() {
    buffer = "";
};

//// fonction interne
size_t ButineurVirtuel::WriteMemoryCallback(char* ptr, size_t size,
size_t nmemb) {
    string strTmp(ptr,size);
    buffer += strTmp;
    return size*nmemb;
};

// charge la page :
std::string ButineurVirtuel::load(std::string url) {
    buffer = "";

    cURLpp::Types::WriteFunctionFunctor functor(WriteMemoryCallback);
    cURLpp::Options::WriteFunction *test = new
cURLpp::Options::WriteFunction(functor);
    request.setOpt(test);

    request.setOpt(new cURLpp::Options::Url(url));
    request.setOpt(new cURLpp::Options::Verbose(false));
    request.perform();

    //delete test;

    return buffer;
};

// destructeur :
ButineurVirtuel::~ButineurVirtuel() {}

int main() {
    cout << "hello" << endl;
};

====== END =======
_______________________________________________
cURLpp mailing list
cURLpp_at_rrette.com
http://www.rrette.com/mailman/listinfo/curlpp
Received on 2006-10-02

These mail archives are generated by hypermail.

donate! Page updated November 12, 2010.
web site info

File upload with ASP.NET