以下旧式演员的命名演员等值是什么?
const string *ps;
void *pv;
pv = (void*)ps; // <--- this
是pv = static_cast<void*>(const_cast<string*>(ps));
吗?
答案 0 :(得分:7)
pv = const_cast<string *>(ps);
足够好 - void *
可以隐式地从任意(非限定)数据(对象)指针类型中指定。
(当然,出于同样的原因,直接分配到const void *
而不进行任何投射会有效。)