我有一个包含对象地址的void指针,但我没有这个对象的类型。我的代码就像
VARIANT vtProp;
现在使用某种方法获取vtProp中的值。它已成功实现了一些价值。
现在我已经在void指针
中分配了值void *ptr = vtProp.pparray;
现在它正在获取一些对象数组。我需要从void指针中获取对象,但是当我使用
在void指针中显示值时wcout << ptr << endl;
它只显示地址包含在void指针中。
您能否建议我如何打印对象名称。
答案 0 :(得分:0)
这会打印一个地址:
void *ptr = vtProp.pparray;
wcout << ptr << endl;
因为operator<<
的重载已应用void*
。如果ptr
指向具有成员name
的对象,则应执行以下操作:
MyObject* ptr = reinterpret_cast<MyObject*>(vtProp.pparray);
wcout << ptr->name << endl;