我需要從C#調用本地C++。 C++庫中的一種方法需要讀取網頁內容 - 我決定通過cURL庫來完成。我創建了一個的Visual C++ - > CLR - >類庫項目,現在我的圖書館看起來是這樣的:在Visual Studio C++類庫中回調
#pragma once
#include <stdio.h>
#include <string>
#include <curl/curl.h>
using namespace System;
namespace HtmlCppParser {
public ref class HtmlCppParser
{
public:
String^ GetContent(String^ url){
CURL *curl;
CURLcode res;
String^ content;
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, this->write_data);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &content);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
return content;
}
}
private:
size_t write_data(void *contents, size_t size, size_t nmemb, void *userp)
{
((std::string*)userp)->append((char*)contents, size * nmemb);
return size * nmemb;
}
};
}
當我編譯此,我得到C3867錯誤:
錯誤C3867 :HtmlCppParser :: HtmlCppParser :: write_data:函數調用缺少參數列表;使用「& HtmlCppParser :: HtmlCppParser :: write_data」...
我的錯誤在哪裏?
謝謝。太感謝你downvoter! – Konstantin