Me gustaría reemplazar el malloc predeterminado en tiempo de enlace para usar un malloc personalizado. Pero cuando intento de redefinir malloc en mi programa, me sale este error:¿Hay alguna manera de redefinir malloc en tiempo de enlace en Windows?
MSVCRT.lib(MSVCR80.dll) : error LNK2005: _malloc already defined in test.lib(test.obj)
Esta aplicación funciona perfectamente en cualquier Unix, y funciona en Windows con la mayoría de las funciones, pero no con malloc. ¿Cómo puedo hacer esto? ¿Y qué es diferente con malloc que no permite anularlo?
Sé que podría reemplazar todas las llamadas a malloc con mi malloc personalizado, o usar una macro para hacerlo, pero preferiría no modificar todas las bibliotecas de terceros.
En la misma discusión se menciona que el enfoque "lib antes del crt" no funciona de manera confiable con funciones como (strdup) – Weidenrinde
qué pasa con '_CrtSetAllocHook': https://msdn.microsoft.com/en-us/library/ cy8c7wz5.aspx – dashesy