Hallo,
Kann sein, dass alle das schon kennen, trotzdem finde ich das hilfreich, weil die original-curlpp-hilfe immer in char* schreibt.
Code:
#include <curlpp/cURLpp.hpp>
#include <curlpp/Easy.hpp>
#include <curlpp/Options.hpp>
#include <curlpp/Exception.hpp>

#define MAX_FILE_LENGTH 20000

std::string Buffer;

// Muss statisch sein, sonst schlägt das linken fehl
size_t WriteMemoryCallback(char* ptr, size_t size, size_t nmemb)
{
  Buffer += ptr;
  return size*nmemb;
};


void print() 
{
  std::cout << "Length: " << std::endl << Buffer.length() << std::endl;
  std::cout << "Content: " << std::endl << Buffer << std::endl;
}


int main(int argc, char *argv[])
{
  if(argc != 2) {
    std::cerr << "Example 05: Wrong number of arguments" << std::endl 
	      << "Example 05: Usage: example05 url" 
	      << std::endl;
    return EXIT_FAILURE;
  }
  char *url = argv[1];
  
  try {
    cURLpp::Cleanup cleaner;
    cURLpp::Easy request;
    
    // Das writer-Callback setzten, damit 
    // cURL in einen std::string schreibt
    cURLpp::Types::WriteFunctionFunctor functor(WriteMemoryCallback);
    cURLpp::Options::WriteFunction *test = new cURLpp::Options::WriteFunction(functor);
    request.setOpt(test);
    
    // Die URL setzten, die emfangen werden soll
    request.setOpt(new cURLpp::Options::Url(url));
    request.setOpt(new cURLpp::Options::Verbose(true));
    request.perform();

    print();
  }
  catch ( cURLpp::LogicError & e ) {
    std::cout << e.what() << std::endl;
  }
  catch ( cURLpp::RuntimeError & e ) {
    std::cout << e.what() << std::endl;
  }
}
Sollte selbsterklärend sein.

MfG