Cómo localizar un error de "doble libre o corrupción"

Cuando ejecuto mi programa (C ++), se bloquea con este error.

* glibc detectado * ./load: doble gratis o corrupción (! prev): 0x0000000000c6ed50 ***

¿Cómo puedo rastrear el error?

Intenté usar print (std::cout) declaraciones, sin éxito. Podríagdb hacer esto más fácil?