Hacker News new | ask | show | jobs
by Keyframe 2610 days ago
No need to malloc each frame. Malloc at startup and memset each frame (don't even need to do that, tbh).
2 comments

Nope, just set the pointer back to where it started from. You do need to be super careful doing this though, as anything that relies on RAII (in c++ land) will be busted. You could manually call the destructor on the object in that case, but kind of defeats the purpose of the "no allocation" goals
C++ includes it's "placement new" feature specifically to cater to the memory pool needs. There's no allocation, and only constructor and destructor calls.
It’s a good idea to have a mode that does malloc every frame, as that makes stale pointers much easier to find.