好的,我有一个变量
void * vp
通过一个函数 proccessData (void * vp)
我有一个接受以下内容作为参数的函数
findIDType(const char* const pointer)
并希望通过pv作为 findIDType(pv)
用GNU 2.95.3编译
不能使用任何其他编译器顺便说一句。
问题是编译器没有告诉我为什么它不被接受,它只是打印出一条cannot
没有任何有用描述的消息。
怎么投那个?从void*
到const char* const
我曾尝试(char*)pv
,(const char*)pv
并(const char* const)pv
没有任何的运气
您必须使用reinterpret_cast
,并将其强制转换为要传递的完整类型,这应该可以:
const char* const ptrTpPass = reinterpret_cast<const char* const>(vp);
但是正如评论中提到的那样,它static_cast
也可以工作,实际上是更可取的:
const char* const ptrTpPass = static_cast<const char* const>(vp);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句