Я конвертирую проект C# в C++ и у меня есть вопрос об удалении объектов после использования. В C# сборщик мусора, конечно, заботится об удалении объектов, но в C++ это нужно делать явно, используя ключевое слово delete
.
Мой вопрос: можно ли просто следить за использованием каждого объекта в методе, а затем удалять его, как только он выходит за рамки (т. е. завершение/переназначение метода)?
Однако я знаю, что сборщик мусора ожидает определенный размер мусора (~ 1 МБ) перед удалением; это происходит из-за накладных расходов при удалении?
Поскольку это игра, которую я создаю, потенциально будет множество объектов, создаваемых и удаляемых каждую секунду, поэтому было бы лучше отслеживать указатели, выходящие за рамки, и как только этот размер достигнет 1 МБ, удалить указатели?
(в качестве примечания: позже, когда игра будет оптимизирована, объекты будут загружаться один раз при запуске, поэтому во время игры удалять будет нечего)