Javaの弱い参照に似たC++がありますか? 私はゲーム内のオブジェクトのリストを持っています(クラスSoldier、リストはstd :: list * enemyです)。ここには目に見える敵の兵士のリストがあります。私の兵士はすべて、敵の兵士(Soldier * target;内部クラス)へのポインタを持つことができます。他の鉱山の兵士が敵の兵士を殺したときに必要なもの(殺された兵士が敵のリストから取り除かれたとき)兵士のポインタを持っている私の兵士は、 私はこのことを兵士のIDで解決することができます。そして、すべてのループで同じIDを持つ敵の兵士がいることを確認することができますが、それは無理な力のようです。私は、私は、正確な行動equivelentがないことを++ 11?C++にJavaの弱参照に類似したものがありますか?
class Soldier{
Soldier* target;
public:
// other functions
void shootAtTarget();
};
http://en.cppreference.com/w/cpp/memory/weak_ptr –
C++について11。 IIRC std :: weak_ptrもtr1に含まれています。それ以外にboost :: weak_ptrがあります。他のすべてが失敗したら、私はブーストコードを見て、インスピレーションを受けます。 – FuleSnabel