Как я могу удалить указатели объектов кучи в деструкторе (взаимозависимых) классов и не столкнуться с проблемами при создании объектов стека? - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть некоторые классы, которые принимают указатели на экземпляры других классов в качестве аргументов и сохраняют их в своих закрытых членах. Если в клиентском коде я создаю объекты всех типов в стеке, то при возвращении основного они автоматически уничтожаются, и программа работает нормально. Но если я создаю те же объекты в куче, я должен удалить указатели на эти объекты в деструкторах класса (ов), и снова программа выполняется нормально. Однако, если я сохраню изменения и снова создаю объекты в стеке, происходит повреждение памяти из-за двойного удаления. Как я могу заставить мои классы уничтожать указатели в любом случае без изменения основного клиентского кода?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...