class Filter{
private:
string contents;
bool Server(void);
public:
void handle(void *, size_t, size_t, void *);
};
मेरे पास इस तरह का क्लास हेडर है। मैं फ़ंक्शन सर्वर के अंदर कर्ल WRITEFUNCTION को कॉल करना चाहता हूं जो स्ट्रिंग सामग्री को लिखने के लिए हैंडल का उपयोग करेगा। हालांकि यह मुझे त्रुटिकर्ल WRITEFUNCTION और कक्षाएं
error: invalid use of member (did you forget the ‘&’ ?)
लाइन त्रुटि द्वारा बताया CURLOPT_WRITEFUNCTION की कि .... मेरे कर्ल अनुरोध कुछ इस तरह दिखता है ...
curl_easy_setopt(curl,CURLOPT_URL, address.c_str());
curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,handle);
curl_easy_perform(curl);
कि करने के लिए अपने असमर्थ मतलब है giveng रहता है हैंडल एक्सेस करें() .. मैं इसे कैसे सुधार सकता हूं?
यह एक स्थानीय std :: स्ट्रिंग temp बनाता है जहां डेटा संग्रहीत किया जाता है। फिर temp को तर्क स्ट्रीम में कॉपी किया जाता है। जब funcdtion लौटाता है, तो दोनों स्ट्रिंग हटा दी जाएंगी। temp.append (...) इसके बजाय वैश्विक स्ट्रिंग अस्थायी डेटा को लिखने के लिए या वैश्विक स्ट्रिंग के लिए पॉइंटर के साथ सही हस्ताक्षर का उपयोग करें और इस पॉइंटर के माध्यम से कॉल करें। – hansmaad
आपको एपेंड का उपयोग करना चाहिए क्योंकि लिखने के फ़ंक्शन को एक संसाधन के लिए कई बार कहा जा सकता है जिसे आप लोड कर रहे हैं – hansmaad
जो मुझ पर दुर्घटनाग्रस्त है – Tim