我正在尝试使用libcurl库中的内置URL转义功能curl_easy_escape。但是,它需要一个CURL *句柄才能工作,我想在一个辅助函数中封装URL转义。什么是最佳做法?
我每次想要进行网址转义时都可以调用curl_easy_init吗,这样
std::string url_encode(const char* msg)
{
CURL* c = curl_easy_init();
char* encoded = curl_easy_escape(c, msg, 0);
std::string retval = encoded;
curl_free(encoded);
curl_easy_cleanup(c);
return retval;
}
如果我确定只在curl_global_init之后调用它,这种方法是否有任何缺点?