0

一部のマネージ C++ コードを C# に変換していたところ、void* 型の構造体メンバーに遭遇しました。ここで、その構造体の 2 つのオブジェクトが作成されます。1 つは void* メンバーが文字列を受け入れ、もう 1 つのケースは int 変数のアドレスを受け入れます。

CK_ATTRIBUTE        findTemplate;
findTemplate->pValue = sUserName;

別のケースでは、

int x = 3;
CK_ATTRIBUTE        findTemplate;
findTemplate->pValue = &x;

この void* メンバーを C# でどのように変換しますか? IntPtr と何か関係がありますか?

4

1 に答える 1

4

C++ では、void ポインターはあらゆるものを指すことができます。コンパイラに「これの型をチェックしないでください」と言います。C# で最も近い翻訳は Object です。

于 2013-10-16T19:09:36.520 に答える