2011-09-16 4 views

答えて

2

C、C++、またはObjective-Cのvoid*ポインタを参照解除することはできません。 A void*ポインタは、未知のデータ型へのポインタです。使用すると、「何かを指していますが、正確には何か分かりません」ということをコンパイラに伝えています。

ユーザデータをBox2Dオブジェクトに割り当てると、それは不透明なポインタとして扱われます。必要に応じてそれをコピーしますが、ポインタが指しているデータを決して見ません。それがあなたの仕事です。

使用可能なポインタを戻すには、暗黙的または明示的に正しい型にキャストする必要があります。あなたが共通のデータ構造を使用している、あなたはこのような何かを行うことができますと仮定:あなたが唯一のCとObjective-Cでvoid*から他のポインタ型への暗黙的なキャストを行うことができます

注 - やってはそうですC++およびObjective-C++では不正であり、明示的キャストが必要です。

関連する問題