オブジェクト ポインターのベクトルがあります。これらのオブジェクトを削除し、それらのオブジェクトが占有しているメモリを解放できるようにしたいと考えています。
私が現在持っているのはこれです:
これは、オブジェクト ポインターを含むベクターです。
std::vector<Ball*> List;
これは、ベクトル内の要素を削除してメモリを解放する関数です。
void BallManager::DeleteBall(int id)
{
List[id]->~Ball(); //Not sure if this is needed
delete List[id];
List[id] = NULL;
List.erase(List.begin()+id);
}
私の質問は、オブジェクトのデストラクタも呼び出す必要がありますか、それとも削除によって処理されますか?