如何将static_cast与类似的转换类型一起使用:
CString response;
resultData = (void *) (const char *) response;
结果数据的类型为void *&
。
我尝试以下列方式做到这一点:
resultData = static_cast<(void*)(const char*)>(response);
resultData = static_cast<void*>(static_cast<const char*>(response));
但它不起作用。
你有什么想法吗?
答案 0 :(得分:2)
您需要转换为const void *
:
resultData = static_cast<const void*>(static_cast<const char*>(response));
或者您需要使用const_cast
(删除const
所需的内容,static_cast
无法将其删除):
resultData = static_cast<void*>(const_cast<char *>(static_cast<const char*>(response)));
注意:如果您的resultData
为void *
,则不需要转换为void *
。