In this chapter, we are going to cover the following topics:
- Unmanaged memory – using malloc()/free()
- Unmanaged memory – using new/delete
- Managed memory – using NewObject< > and ConstructObject< >
- Managed memory – de-allocating memory
- Managed memory – using smart pointers (TSharedPtr, TWeakPtr, TAutoPtr) to track an object
- Using TScopedPointer to track an object
- Unreal's garbage collection system and UPROPERTY()
- Forcing garbage collection
- Breakpoints and stepping through code
- Finding bugs and using call stacks
- Using the profiler to identify hot spots