要素がクラスであるベクトル内の要素の位置を取得するにはどうすればよいですか。これを行う方法はありますか?
コード例:
class Object
{
public:
void Destroy()
{
// run some code to get remove self from vector
}
}
main.cpp で:
std::vector<Object> objects;
objects.push_back( <some instances of Object> );
// Some more code pushing back some more stuff
int n = 20;
objects.at(n).Destroy(); // Assuming I pushed back 20 items or more
だから私は、ベクトル内のそれ自体の位置を返すクラスのメンバーであるメソッドまたは何かを記述できるようにしたいと思います...これは可能ですか?
編集:
混乱しているため、もっと詳しく説明する必要があります。
void Destroy(std::vector<Object>& container){
container.erase( ?...? );
}
問題は、消去を行う番号をどのように見つけることができるかということです...? どうやらこれは不可能だ...そうではないかもしれないと思った...