0

オブジェクトのアドレスを含む void ポインターがありますが、このオブジェクトの型はわかりません。私のコードは

VARIANT vtProp;

何らかの方法を使用して vtProp の値を取得します。いくつかの値が正常に取得されました。

これで、void ポインターに値を代入しました

void *ptr = vtProp.pparray;

現在、オブジェクトの配列を取得しています。voidポインターからオブジェクトを取得する必要がありますが、voidポインターに値を表示していたときに

wcout << ptr << endl;

voidポインタに含まれるアドレスのみを表示しています。

オブジェクト名を出力する方法を教えてください。

4

1 に答える 1

0

これはアドレスを出力します:

void *ptr = vtProp.pparray;
wcout << ptr << endl;

のオーバーロードがoperator<<かかるためvoid*です。ptrmember を持つオブジェクトを指している場合は、次のnameようにする必要があります。

MyObject* ptr = reinterpret_cast<MyObject*>(vtProp.pparray);
wcout << ptr->name << endl;
于 2013-10-07T10:22:35.997 に答える