プログラムで少しメモリリークが発生していますが、これが唯一の可能性があると思います。
if (inputType == 'S')
{
    SavingAccount* savingAccount = new SavingAccount();
    inFile >> *savingAccount;
    accounts.push_back(savingAccount);
}
プログラムの最後にポインタのベクトルが削除されますが、私が持っている 3 種類のアカウントに対応しているように見える 3 つのエラー リークがあります。そうは言っても、ポインターをベクターに入れた後にポインターを削除すると、ベクター内のエントリも削除されます(これは予想通りでした)。
これを解決する方法を知っている人はいますか?
編集:
void Transaction::cleanUp()
{
    for (int i = 0; i < accounts.size(); i++)
    {
        delete accounts[i];
    }
    accounts.clear();
}
クリーンアップ コードが追加されました。
編集:解決済み
私の問題は、クラスのデストラクタほどベクトルとは関係がありませんでした。仮想デストラクタを定義していなかったため、基本クラスのみが消去され、派生クラスのフラグメントが残りました。これを追加した後、メモリリークはありません。