ここは私の問題です。デザインの問題に関するヘルプ
私はBox2Dという物理ライブラリを使用しています。私は、2つの器具が衝突したときに私に教えるリスナーを接続することができます。
基本的にBox2Dの仕組みは、b2Bodiesを作成することです。したがって、私は、どのb2Bodyが衝突したフィクスチャに属するのか知るだけです。私の試合ではエンティティがあり、そこからPhisicsEntityがあります。 PhysicsEntityはb2Bodyへのポインタを保持します。また、Entityから送信されるsendMessageメソッドもあります。問題は、b2Bodyから、PhysicsEntityに衝突メッセージを送信する方法です。私がやったと思ったのは、b2BodyのuserData void *を対応するPhysicsEntityに設定することでした。これを行うには、void *をキャストしなければならないのは非常に間違っているようです。
キャストやルックアップなしでb2Bodyに関連付けられている物理エンティティをすばやく知る方法がありますか?
ありがとうございました
C++では、void *との間でキャストが必要です。部分的には、void *を「何かへのポインタ」として使う人やあるタイプから別のタイプへの安価なキャストとして、複数の継承を考慮して破損を招くのに役立ちます。 – dascandy