Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code.